您的位置:首页 > 编程语言 > Python开发

Python一日一练05----怒刷点击量

2016-03-07 17:12 267 查看


功能

自己主动获取CSDN文章列表,并对每篇文章添加点击量.

源代码

import urllib.request
import re
import time
import random
from bs4 import BeautifulSoup

p = re.compile('/a359680405/article/details/........')

#自己的博客主页
url = "http://blog.csdn.net/a359680405"

#使用build_opener()是为了让python程序模仿浏览器进行訪问
opener = urllib.request.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]

html = opener.open(url).read().decode('utf-8')

allfinds = p.findall(html)
print(allfinds)

urlBase = "http://blog.csdn.net"#须要将网址合并的部分
#页面中的网址有反复的,须要使用set进行去反复
mypages = list(set(allfinds))
for i in range(len(mypages)):
mypages[i] = urlBase+mypages[i]

print('要刷的网页有:')
for index , page in enumerate(mypages) :
print(str(index), page)

#设置每一个网页要刷的次数
brushMax = 200

#全部的页面都刷
print('以下開始刷了哦:')
for index , page in enumerate(mypages) :
brushNum=random.randint(0,brushMax)
for j in range(brushNum):
try :
pageContent = opener.open(page).read().decode('utf-8')
#使用BeautifulSoup解析每篇博客的标题
soup = BeautifulSoup(pageContent)
blogTitle = str(soup.title.string)
blogTitle = blogTitle[0:blogTitle.find('-')]
print(str(j) , blogTitle)

except urllib.error.HTTPError:
print('urllib.error.HTTPError')
time.sleep(1)#出现错误。停几秒先

except urllib.error.URLError:
print('urllib.error.URLError')
time.sleep(1)#出现错误,停几秒先
time.sleep(0.1)#正常停顿,以免server拒绝訪问



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: