python爬虫-----学习bs,爬取丁香园特定帖子的所有回复内容
beautifsoup----爬虫数据挖掘又一大利器
– 安装:
conda install beautifulsoup4 或者 pip install beautifulsoup4(这个4代表着bs的版本)
这里我用了conda安装:
– beautiful soup:
BeautifulSoup 是一个可以从HTML或XML文件中提取数据的Python库.
官方文档:Beautifulsoup官方文档(里面讲的很详细)
–案例:
工具:urllib bs
思考:
1. 用urllib.request.Request请求网页,使用headers设置用户代理或者使用proxy代理服务器隐 藏身份,因为直接请求,返回403。
2. 通过查看源代码发现,用户名在auth类下的a标签里,而用户回复内容在postbody类里
4. 炖一锅汤,使用css选择器 select方法下的get_text()方法找到我们想要的数据
5. for循环并按想要的格式输出数据代码:
输出结果:
疑问:如何获取所有跟贴战友的name和content?
但是通过结果我们发现,最终结果只有四个战友的名字和其回复内容,但是我们发现登录丁香园账号后这个帖子有很多跟贴。
解决办法:
使用cookie,模拟用户登录
输出结果:
**特别提醒:**这里range函数里如果是len(name),结果会多一行“没找到”
原因就是我们用cookie模拟登录,那么最后一个战友的name是自己。
总结:
bs是出了xml bs4等外的非常重要的一种数据提取库
他们的优缺点:
- 正则: 很快,不好用,不许安装
- beautifulsoup:慢,使用简单,安装简单
- lxml: 比较快,使用简单,安装一般
bs的四大对象:
- Tag
- NavigableString
- BeautifulSoup
- Comment
遍历文档树的方法
find_all和find
css选择器(select)
python爬虫-----学习bs,爬取丁香园特定帖子的所有回复内容相关推荐
- Python爬虫学习笔记 -- 爬取糗事百科
Python爬虫学习笔记 -- 爬取糗事百科 代码存放地址: https://github.com/xyls2011/python/tree/master/qiushibaike 爬取网址:https ...
- Python爬虫学习之爬取淘宝搜索图片
Python爬虫学习之爬取淘宝搜索图片 准备工作 因为淘宝的反爬机制导致Scrapy不能使用,所以我这里是使用selenium来获取网页信息,并且通过lxml框架来提取信息. selenium.lxm ...
- Python爬虫实战之爬取百度贴吧帖子
Python爬虫实战之爬取百度贴吧帖子 大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 本篇目标 对百度贴吧的 ...
- 为了部落 来自艾泽拉斯勇士的python爬虫学习心得 爬取大众点评上的各种美食数据并进行数据分析
为了希尔瓦娜斯 第一个爬虫程序 csgo枪械数据 先上代码 基本思想 问题1 问题2 爬取大众点评 URL分析 第一个难题 生成csv文件以及pandas库 matplotlib.pyplot库 K- ...
- python爬虫学习之爬取超清唯美壁纸
简介 壁纸的选择其实很大程度上能看出电脑主人的内心世界,有的人喜欢风景,有的人喜欢星空,有的人喜欢美女,有的人喜欢动物.然而,终究有一天你已经产生审美疲劳了,但你下定决定要换壁纸的时候,又发现网上的壁 ...
- python爬虫学习一--爬取网络小说实例
最近疫情猖獗,长假憋在家里实在无聊,早上突然看了一篇python爬虫文章,当场决定试验一下,参照了一下别人的案例,自己各种踩坑捣鼓了好几个小时,终于成功最后把具体步骤和注意点分享给大家: 1.Pyth ...
- python爬虫学习之爬取全国各省市县级城市邮政编码
实例需求:运用python语言在ip查询 查ip 网站ip查询 同ip网站查询 iP反查域名 iP查域名 同ip域名网站爬取全国各个省市县级城市的邮政编码,并且保存在excel文件中 实例环境:pyt ...
- python爬虫学习之爬取某网站上的视频
""" 实现步骤:发送请求 >>> 获取数据 >>> 解析数据 >>> 保存数据 1.发送请求,对于视频信息数据包发 ...
- Python爬虫学习之爬取豆瓣音乐Top250存入Excel表格中
前言 目标网站:https://music.douban.com/top250 任务: 爬取豆瓣音乐Top250的歌曲名 爬取豆瓣音乐Top250的歌曲对应的表演者.发行时间和音乐流派(分别对应下图斜 ...
最新文章
- Luogu P2982 [USACO10FEB]慢下来 Slowing down | dfs序、线段树
- Skype for Business Server 2015-10-ADFS-2-配置
- Hyper-V Server虚拟机快照(检查点)
- 来自未来团队伙伴的一封信
- 关于错误Resource interpreted as Script but transferred with MIME type text_html
- numpy——mgrid
- Linux网络编程——tcp并发服务器(多线程)
- c#如何实现叫号操作_微信预约排队叫号系统操作指南
- 抓住\留住用户的引导页长什么样?
- 负数的补码公式是什么_为什么0xffffffff是-1?(计算机对整型的存储)
- Java环境变量配置
- axure创建自定义元件库
- 【手持式微波频谱分析仪】真正便携且功能强大的仪器 - 欧洲制造
- Java 定义一个 Employee类,定义方法输出Employee的名字,年龄,总收入。编写应用程序使用Employee
- 京东、搜狗“带狗”都好好的,为何司机对快狗打车不满意?
- Android N 程序适配要点
- Remix 完全本地化部署
- PPT画图保存时自动压缩图片问题
- jenkins api使用_使用管理API和Jenkins作为IBM App Connect Professional部署自动化的持续集成引擎
- 【技术干货】跨境茶话会第4期丨响应式编程的应用
热门文章
- 30.华为WLAN产品特性介绍_AP管理
- linux下实现dlna识别当前音频格式,通过 PulseAudio 实现局域网音乐播放
- ultraiso制作Windows系统安装U盘
- 香港十大正规外汇黄金交易平台排名(2021版)
- Scrapy问题总结
- ubuntu系统卸载火狐浏览器
- Web端与App端自动化测试框架
- 2019-2-13-Latex-论文elsevier,手把手如何用Latex写论文
- 935.Knight Dialer [JavaScript]
- MybatisPlus_${ew.sqlSelect},${ew.sqlSet},${ew.sqlSegment},${ew.customSqlSegment}的使用