爬取贴吧内容

先了解贴吧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爬虫如何爬取贴吧内容相关推荐

  1. python爬取小说网站资源_利用python的requests和BeautifulSoup库爬取小说网站内容

    1. 什么是Requests?html Requests是用Python语言编写的,基于urllib3来改写的,采用Apache2 Licensed 来源协议的HTTP库.python 它比urlli ...

  2. python爬虫代码实例-Python爬虫爬取百度搜索内容代码实例

    这篇文章主要介绍了Python爬虫爬取百度搜索内容代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 搜索引擎用的很频繁,现在利用Python爬 ...

  3. [python爬虫] BeautifulSoup和Selenium简单爬取知网信息测试

    作者最近在研究复杂网络和知识图谱内容,准备爬取知网论文相关信息进行分析,包括标题.摘要.出版社.年份.下载数和被引用数.作者信息等.但是在爬取知网论文时,遇到问题如下:   1.爬取内容总为空,其原因 ...

  4. python爬虫贴吧_Python爬虫如何爬取贴吧内容

    爬取贴吧内容 先了解贴吧url组成: 每个贴吧url都是以'https://tieba.baidu.com/f?'开头,然后是关键字 kw=''贴吧名字'',再后面是 &pn=页数 (pn=0 ...

  5. 从入门到入土:Python爬虫学习|实例练手|爬取猫眼榜单|Xpath定位标签爬取|代码

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  6. 从入门到入土:Python爬虫学习|实例练手|爬取百度翻译|Selenium出击|绕过反爬机制|

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  7. 从入门到入土:Python爬虫学习|实例练手|爬取新浪新闻搜索指定内容|Xpath定位标签爬取|代码注释详解

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  8. 从入门到入土:Python爬虫学习|实例练手|爬取百度产品列表|Xpath定位标签爬取|代码注释详解

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  9. python 写csv scrapy_scrapy爬虫框架实例一,爬取自己博客

    本篇就是利用scrapy框架来抓取本人的博客,博客地址:http://www.cnblogs.com/shaosks scrapy框架是个比较简单易用基于python的爬虫框架,相关文档:http:/ ...

最新文章

  1. 通知提示SCPromptView
  2. Atitit.提升api兼容性的方法 v3 q326
  3. 抢票 | AI未来说学术论坛第八期 深度学习特别专场
  4. 程序猿到了30岁以后,是如何把自己逼死的
  5. 将本地Blog部署到GitHub上,有自己的博客页面!
  6. 解析OpenShift的存储规划
  7. vscode+vim使用技巧
  8. Android 对ScrollView滚动监听,实现美团、大众点评的购买悬浮效果
  9. JDBC学习(六、事务处理操作)
  10. Linux安装mysql客户端
  11. TensorFlow MNIST 数据集
  12. dos命令move 移动文件
  13. comsol matlab安装教程,comsol和matlab接口
  14. DX11编程之计算着色过滤器
  15. SecureCRT免费版下载
  16. 【数学知识】非线性方程求解的二分法以及牛顿迭代法
  17. windows系统使用的那点事(1)-解决win10的EN输入法不见了
  18. Xcode build解密
  19. Java调用kjb文件
  20. halcon学习_超人启蒙班10-20课

热门文章

  1. laravel5.6 数组传递到前端
  2. 关于BitmapImage EndInit()时报值不在范围内的异常
  3. 【操作系统】进程间通信
  4. U盘安装Centos6.3 续
  5. MySQL中的数据类型
  6. 基于mvc三层架构和ajax技术实现最简单的文件上传
  7. 关于敏捷开发和憋个大招两种开发方式的思考
  8. 旋转动画 rotate
  9. gitbook 编辑手册
  10. AXIS2整合spring需要的jar,以及大部分缺少jar所报的异常