亲宝软件园·资讯

展开

Python推送百度链接

LyShark 人气:0

通过代码实现抓取个人博客中某一页指定文章链接,并批量将该链接推送到百度站长平台,起到快速收录的目的。 

import sys
import requests
from bs4 import BeautifulSoup

# 推送百度爬虫
def push_page(url):
    headers = {
        'User-Agent': 'curl/7.12.1',
        'Host': 'data.zz.baidu.com',
        'Content-Type': 'text/plain',
        'Content-Length': '83'
    }
    urls = "http://data.zz.baidu.com/urls?site=https://www.lyshark.com&token=xxxxxxx"
    try:
        html = requests.post(urls, headers=headers, data=url, timeout=5).text
        push_status = eval(html)['success']
        if push_status == 1:
            return 1
        else:
            return 0
    except:
        return 0

# 获取路径
def get_page(page):
    html = requests.get(page,timeout=5).text
    try:
        bs = BeautifulSoup(html,"html.parser")
        ret = bs.select('div[class="container"] div[class="row"] h2[class="post-title"] a')
        for item in ret:
            push_url = item.get('href')
            push_ref = push_page(push_url)
            print("推送: {} --> 状态: {}".format(push_url,push_ref))
        return 1
    except:
        return 0

if __name__ == "__main__":
    arg = sys.argv
    get_page(arg[1])

补充

在百度的站长平台上介绍了链接提交方法,目前有这四种:

主动推送:最快的提交方式,推荐将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。

自动推送:最为便捷的提交方式,将自动推送的JS代码部署在站点的每一个页面源代码中,部署代码的页面在每次被浏览时,链接会被自动推送给百度。可以与主动推送配合使用。

sitemap:将网站链接放到sitemap中,然后将sitemap的地址提交给百度。百度会周期性的抓取检查您提交的sitemap,对其中的链接进行处理,但收录速度慢于主动推送。

手动提交:操作起来麻烦。

为了让网站最新的内容更加及时的提交给百度,使用主动推送就很必要,百度给的例子中没有 Python 的。根据 Google 了一下,还真找到了不错的脚本,分享收藏一下。

以下脚本使用 Python3,未在 Python2 环境下测试过。

读取本地生成的 sitemap.txt 文件

另外,可尝试以下脚本。

到此这篇关于Python实现推送百度链接的示例代码的文章就介绍到这了,更多相关Python推送百度链接内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

加载全部内容

相关教程
猜你喜欢
用户评论