百度API多文件自动提交 PHP代码

百度API多文件自动提交 PHP代码

行者SEO
2021-10-28 / 0 评论 / 28 阅读 / 正在检测是否收录...

百度官方给了提交核心代码,这里我们自己加一下遍历目录多文件提交,每个文件限制2000行URL.
将文件保存成baidu.php,然后宝塔每天定时运行一次就行了。

需要用户提前把txt文件切割放到网站指定目录。
以后有空在完善,把自动切割和只提交未收录url也写了。

<?php
/*
1 先设置url的所在文件夹名称
2 修改提交api为自己的
3 ...
*/

//遍历文件名函数
function get_dirs($dir_path)
{
    $res = array();
    $res_lists = array();
    foreach (glob("{$dir_path}/*.txt") as $item) {
        if (is_dir($item)) {
            $folder = end(explode('/', $item));
            $res[$folder] = get_dirs($item);
            continue;
        }
        $res[] = basename($item);
    }
    return $res;
}
//设置文件夹名称
$url_dir = "urldir";
$arr = get_dirs($url_dir);

//遍历提交
foreach ($arr as $value) {
    echo "正在提交{$value}...";
    //打开TXT
    $file = fopen("$url_dir/$value", "r");
    $urls = array();
    $i = 0;
    while (!feof($file)) {
        $urls[$i] = fgets($file);
        $i++;
    }
    fclose($file);
    $api = 'http://data.zz.baidu.com/urls?site=https://blog.yigeseo.net&token=ryH6CJcAkOHZv7XZ';
    $ch = curl_init();
    $options = array(CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => implode("\n", $urls), CURLOPT_HTTPHEADER => array('Content-Type: text/plain'));
    curl_setopt_array($ch, $options);
    $result = curl_exec($ch);
    echo "$result<br>";
}
1

评论

博主关闭了当前页面的评论