<返回更多

python爬取贴吧网页源代码

2019-10-18    
加入收藏
#本代码作用:爬取贴吧的页面信息
'''观察发现在百度贴吧搜索Python时:
1、百度贴吧第1页网址:http://tieba.baidu.com/f?ie=utf-8&kw=python&fr=search&red_tag=p0106761335
2、百度贴吧第1页网址:http://tieba.baidu.com/f?kw=python&ie=utf-8&pn=50
3、百度贴吧第1页网址:http://tieba.baidu.com/f?kw=python&ie=utf-8&pn=100
4、百度贴吧第1页网址:http://tieba.baidu.com/f?kw=python&ie=utf-8&pn=150
观察上面的网址规律发现kw=python,即搜索关键字在ke=后面,同时网页地址最后为pn=50*(n-1),
即可得出结论第一页的网址应该为:http://tieba.baidu.com/f?kw=python&ie=utf-8&pn=0
测试结果第一页的网址确实如此
'''

如下图所示:

python爬取贴吧网页源代码

 

代码如下:

#1、下面开始导入相应的模块
import requests
from bs4 import BeautifulSoup
import time
#2、设置请求网址,即百度贴吧
def spider1(begin,end,kw):
 headers={
 "User-Agent":"Mozilla/5.0 (windows NT 10.0; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/69.0.3497.100 Safari/537.36"
 } #设置请求头
 for page in range(begin,end): #遍历range对象的数值,相当于遍历页码
 pn=(page-1)*50 #将(页码的值-1)*50赋值给pn
 url="http://tieba.baidu.com/f?kw="+str(kw)+"&ie=utf-8&pn="+str(pn) #设置网页地址为百度贴吧地址,kw为搜索关键字,pn为页码的转换值
 response=requests.get(url,headers=headers) #对网站进行get请求,并伪装成浏览器进行请求
 response.encoding="utf-8" #自动解析编码格式并赋值给response.encoding
 html=response.text #将网页源代码赋值给html
 print("开始打印百度贴吧关键字是:{}的第{}页网页源代码{}".format(kw,page,html))
 time.sleep(1) #时间休眠1秒
 print("第{}页打印完成".format(page)) #打印第多少页打印完成
spider1(1,5,"python")

运行结果如下图所示:

python爬取贴吧网页源代码

 

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>