hexo快速收录 - 基于python的百度主动推送工具

开始

  • 基于python的主动推送工具, 根据百度站长工具说的,主动推送>自动收录>sitemap>手动提交,于是写了一个Python版本的主动提交工具备忘
  • 使用此工具前提得有自己网站的站点地图

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# coding: utf-8
import re
import requests
import httplib

def generate(urlSitemap): #生成urls.txt 所有网址链接
data = requests.get(urlSitemap).text
link_list1 = re.findall(r"url=\"(.*?)\"/>", data)
link_list2 = re.findall(r"<loc>(.*?)</loc>", data)
urls = open("urls.txt", 'w+')
for url in link_list1 + link_list2:
print >> urls, "https:%s" % url
urls.close()


def push(filecontents):
# 括号内容需自己提供
url = "/urls?site=(url)&token=(token)" # url为网址地址,token在百度站长平台里会提供
headers = {'Content-Type': 'text/plain'}
conn = httplib.HTTPConnection('data.zz.baidu.com')
conn.request(method="POST", url=url, body=filecontents, headers=headers)
response = conn.getresponse()
baidupushresult = response.read()
conn.close()
return baidupushresult

if __name__ == '__main__':
url = 'http://www.fayne.cn/baidusitemap.xml' # url 填写sitemap.xml地址,这里是我的
generate(url)
filecontents = open('urls.txt', 'rb').read()
ps = eval(push(filecontents))
print '成功推送%d条,当天剩余%d条' % (ps['success'], ps['remain'])

运行结果

运行此代码,输出
成功推送233条,当天剩余4991126条 ,表明推送成功

结束收工

至此,一个简单主动推送工具就完成了,代码写的有些丑陋,望见谅

坚持原创技术分享,您的支持将鼓励我继续创作!