python爬虫贴吧_Python爬虫如何爬取贴吧内容
爬取贴吧内容
先了解贴吧url组成:
每个贴吧url都是以'https://tieba.baidu.com/f?'开头,然后是关键字 kw=‘’贴吧名字‘’,再后面是 &pn=页数 (pn=0第一页,pn=50第二页,依次类推)
更多关于Python爬虫的相关知识,可以关注Python学习网的Python爬虫栏目。
1.先写一个main,提示用户输入要爬取的贴吧名,并用urllib.urlencode()进行转码,然后组合url
2.接下来,写一个百度贴吧爬虫接口tiebaSpider(),需要传递3个参数给这个接口, 一个是main里组合的url地址,以及起始页码和终止页码,表示要爬取页码的范围。
3.前面写出一个爬取一个网页的代码。然后,将它封装成一个小函数loadPage(),供我们使用。
4.将爬取到的每页的信息存储在本地磁盘上,我们可以简单写一个存储文件的接口writePage()# _*_ coding:utf-8 _*_
import urllib,urllib2
def loadPage(url,filename):
#根据url发送请求,获取服务器响应文件
print '正在下载' + filename
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML,
like Gecko) Chrome/60.0.3112.101 Safari/537.36'}
request = urllib2.Request(url,headers = headers)
content = urllib2.urlopen(request).read()
return content
def writePage(html,filename):
#将html内容写入到本地
print '正在保存' + filename
with open(unicode(filename,'utf-8'),'w') as f:
f.write(html)
print '_' * 30
def tiebaSpider(url,beginPage,endPage):
#贴吧爬虫调度器,负责组合处理每个页面的url
for page in range(beginPage,endPage + 1):
pn = (page - 1) * 50
filename = '第' + str(page) + '页.html'
fullurl = url + '&pn=' + str(pn)
# print fullurl
html = loadPage(fullurl,filename)
writePage(html,filename)
if __name__ == '__main__':
kw = raw_input('请输入贴吧名:')
beginPage = int(raw_input('请输入起始页:'))
endPage = int(raw_input('请输入结束页:'))
url = 'https://tieba.baidu.com/f?'
key = urllib.urlencode({'kw':kw})
fullurl = url + key
tiebaSpider(fullurl,beginPage,endPage)
通过输入想要搜索的贴吧名字,爬取内容并保存到本地
python爬虫贴吧_Python爬虫如何爬取贴吧内容相关推荐
- python爬虫外贸客户_python实战成功爬取海外批发商价格信息并写入记事本
运行平台:windows Python版本:Python 3.7.0 用到的第三方库:requests ,Beautiful Soup,re IDE:jupyter notebook 浏览器:Chro ...
- Python 爬虫进阶篇-利用beautifulsoup库爬取网页文章内容实战演示
我们以 fox新闻 网的文章来举例子,把整篇文章爬取出来. 首先是标题,通过结构可以看出来 class 为 article-header 的节点下的 h1 里的内容即是标题,通过 string 可以获 ...
- python 写数值模拟器_python实现模拟器爬取抖音评论数据的示例代码
目标: 由于之前和朋友聊到抖音评论的爬虫,demo做出来之后一直没整理,最近时间充裕后,在这里做个笔记. 提示:大体思路 通过fiddle + app模拟器进行抖音抓包,使用python进行数据整理 ...
- 知乎python练手的_Python—爬虫之初级实战项目:爬取知乎任一作者的文章练手
爬虫之初级实战项目:爬取知乎任一作者的文章练手 在正式上代码之前,先过一遍之前所学知识的框架内容,温故而知新!!! 接下来我们直接上代码,一定要手敲代码.手敲代码.手敲代码!!! import req ...
- python爬虫入门实战---------一周天气预报爬取_Python爬虫入门实战--------一周天气预报爬取【转载】【没有分析...
Python爬虫入门实战--------一周天气预报爬取[转载][没有分析 Python爬虫入门实战--------一周天气预报爬取[转载][没有分析] 来源:https://blog.csdn.ne ...
- python提取图片文字视频教学_Python学习第七天之爬虫的学习与使用(爬取文字、图片、 视频)...
一.爬虫记得基本方法 1.1 爬虫概述 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使 ...
- python爬取文字和图片_Python学习第七天之爬虫的学习与使用(爬取文字、图片、 视频)...
[toc] 一.爬虫记得基本方法 1.1 爬虫概述 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本. ...
- python网页爬虫漫画案例_Python爬虫 JS 案例讲解:爬取漫画
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 以下文章来源于Python爬虫案例,作者麦自香 转载地址 https://blo ...
- python爬取京东手机数据_Python数据爬虫学习笔记(21)爬取京东商品JSON信息并解析...
一.需求:有一个通过抓包得到的京东商品的JSON链接,解析该JSON内容,并提取出特定id的商品价格p,json内容如下: jQuery923933([{"op":"75 ...
最新文章
- R语言tidyr包Unite()函数实战详解:多个数据列合并为一列
- 如何解决Bluetooth系统设计的棘手问题
- mysql数据库性能指标结果_MySQL数据库性能优化的关键参数(转)
- 获取IOS应用的子目录
- 在google play开放平台上closed texting如何删除_“爷青回”!如何抢先体验《英雄联盟》手游?这份攻略送给你...
- 解决新浪微博API调用限制 突破rate_limit_status瓶颈
- java中的asList_Java中的Arrays.asList()方法
- 操作系统中的文件系统和访问方法
- IDEA工作笔记-对.idea及.iml文件的理解
- 分享改进 高性能通用分表归档存储过程测试结果更新
- python编程100个小程序-用python编写一个闹钟小程序
- Win7 旗舰版激活方法及密钥
- 神经网络求解二阶常微分方程(代码)
- 斯蒂文理工计算机排名,全美最强STEM大学排行榜发布!这些学校考虑一下?
- java poi 设置标题_java POI操作word2010简单实现多级标题结构
- 视频水印去除工具哪个好
- Word Ladder II
- 纯css实现简单的页面视差滚动
- 轻松玩转“项目管理” 群硕软件PMS正式发布
- Nod32升级服务器(转)
热门文章
- 【Java线程】线程协作实现多对多聊天
- 【Java线程】简单实现带界面的一对一聊天
- shell后台执行命令-crontab
- [转]计算机学习道路
- svn Error:Wrong committed revision number: -1。
- 算法7-10:拓扑排序
- 为啥有的程序员不爱说话,却表达能力爆表?(附教程)
- 软件测试用例文档模板 简书,如何写出高质量的测试用例
- android 避内存溢出,Android避免内存溢出(Out of Memory)方法总结
- c语言实验11答案,c语言实验9-11参考答案