一、 爬虫相关工具
1. python3中自带的urllib
2. python3中鼎鼎大名的包requests
3. 正则表达式或xpath等数据匹配
4. 谷歌浏览器调试工具
二、 豆瓣电影分析
1. 获取网页源码
urllib版
import urllib response = urllib.request.urlopen(url) html = response.read()
requests版(需要单独安装requests包)
import requests response = requests.get(url) html = response.text
2. 网页源码分析
通过使用浏览器的F12功能
<a href="https://movie.douban.com/subject/1292052/" class="">
<span class="title">肖申克的救赎</span>
<span class="title"> / The Shawshank Redemption</span>
<span class="other"> / 月黑高飞(港) / 刺激1995(台)</span>
</a>
可以从中发现所需信息:
a标签中属性href:链接
span标签中文本:电影名称
3. xpath的操作
a标签中属性href://ol/li//div[@class='hd']/a/@href
span标签中的文本://ol/li//div[@class='hd']/a/span[1]/text()
这里需要注意span后面是否带有下标指向
4. 如何翻页
如法炮制,匹配后页的链接并通过urllib进行跳转
//a[text()='后页>']/@href
需要注意链接并不完整,加上协议、域名以及路径:https://movie.douban.com/top250
5. 如何判断结束
匹配为空即是结束
6. 如何获取具体电影的详细内容
通过2中获取到的链接内容,进行链接的跳转,并对相关数据进行匹配处理
三、 稍微进阶的相关内容
1. header消息头
起到反爬虫等作用
2. 上传表单
post表单数据
3. selenium与js的加载
例如豆瓣电影搜索中的window.__DATA__
部分js加密,通过selenium可以节省很大的力气。但是selenium的速度过慢,使用时依据具体情况
4. 谷歌浏览器的抓包与断点调试
这点实在不知道怎么编
四、练手项目
皇室战争天梯比赛记录
英雄联盟游戏壁纸下载,农药的也行
全民K歌歌曲下载