
python爬虫从0到精通
文章平均质量分 61
主要介绍python爬虫中urllib、requests、scrapy三大框架的用法,从0基础学习到精通的过程
YiHong_Li
这个作者很懒,什么都没留下…
展开
-
2.3 案例5:爬取某糗事内容
课前说明:本章节请求的 url 部分用 ** 代替爬虫分三个模块: 1、请求模块:用于构造请求体,并将请求到的网页(数据)返回给解析模块; 2、解析模块:用于提取数据(本章节用xpath提取网页中的数据),并返回数据给存储模块; 3、存储模块:将数据存储在 json 文件中。案例简介: 用于抓取网页 https://www....原创 2019-01-15 16:02:17 · 233 阅读 · 0 评论 -
2.2 案例4:爬取网页图片并下载到本地
课前说明:本章节请求的 url 部分用 ** 代替本章节需要掌握的知识点:1、用 js 代码模拟下拉动作: document.documentElement.scrollTop= %d %d表示下拉的幅度2、如何使用 redis 数据库进行数据存储爬虫分三个模块: 1、请求模块:用于构造请求体,并将请求到的网页(数据)返回给解析模块; ...原创 2019-01-14 19:08:19 · 573 阅读 · 0 评论 -
2.1 案例3:爬取某读书网站
课前说明:本章节请求的 url 部分用 ** 代替本章节需要掌握的知识点:1、无界面浏览器的使用: driver = r"/home/**/Downloads/chromedriver" opt = webdriver.ChromeOptions() opt.add_argument('--headless') opt.add_argument('--di...原创 2019-01-12 14:43:01 · 463 阅读 · 3 评论 -
2.0 案例2:爬取房源信息以及分析房价
课前说明:本章节请求的 url 部分用 ** 代替本章节需要掌握的知识点: 1、如何用 xpath 解析数据; 2、如何用 csv 存储数据(注:由于字典是无序的,所以写入csv时,表头可能跟内容搭配不对,需要手动调整表头信息); 3、对csv 数据进行分析;爬虫分三个模块: 1、请求模块:用于构造请求体,并将请求到的网...原创 2019-01-10 21:32:45 · 582 阅读 · 0 评论 -
1.9 案例一
课前说明:本章节请求的 url 部分用 ** 代替本章节需要掌握的知识点:request.urlretrieve() # urlretrieve函数是用来下载资源的函数,第一个参数是请求的 url,第二个参数是要保存的文件名爬虫分三个模块: 1、请求模块:用于构造请求体,并将请求到的网页(数据)返回给解析模块; 2、解析模块:用于提取数据(本章节用正则...原创 2019-01-09 22:13:55 · 241 阅读 · 0 评论 -
1.8 selenium工具
课前说明:本章节请求的 url 部分用 ** 代替本章节需要掌握的知识点:selenium工具是使用。介绍: selenium是一种用于web程序测试的工具,selenium测试的代码可以直接运行在浏览器中,就像真正的用户操作一样。在写python爬虫的时候,主要是用 selenium 的 webdriver 来驱动浏览器进行相关的操作本章节用到的浏览器为谷歌浏...原创 2019-01-08 18:53:05 · 321 阅读 · 0 评论 -
1.7认识网页解析工具
课前说明: 网页解析工具有很多种,例如:re、xpath、jsonpath、bs4等等,本章节简单介绍一下re和xpath的用法,其它解析工具自行学习O(∩_∩)O哈! 本章节需要掌握的知识点:re正则的使用xpath的使用re 详解:import re#string = '''Hi girl! Are you free tonight? ...原创 2019-01-07 21:50:52 · 1143 阅读 · 0 评论 -
1.6IP代理请求
课前说明:本章节请求的 url 部分用 ** 代替 本章节需要掌握的知识点:request.ProxyHandler() # 构建代理服务器对象 参数为一个字典from urllib import requesturl = 'https://www.bai**.com/s?wd=ip'# 请求头headers = { 'User-Agent': 'Mozil...原创 2019-01-06 20:21:36 · 212 阅读 · 0 评论 -
1.5会话处理
课前说明:本章节请求的 url 部分用 ** 代替 本章节需要掌握的知识点:cookiejar # 处理cookie的时候,需要把cookie信息存入一个对象,这个工具就是将cookie进行初始化request.HTTPCookieProcessor # 这个是HTTPhandler的子类,专门用于保存cookie信息build_opener # 构建一个op...原创 2019-01-05 21:08:57 · 189 阅读 · 0 评论 -
1.4url带中文的请求
本章节需要掌握的知识点:urllib中的parseparse.quote() # 对带中文的参数进行编码parse.unquote() # 解码from urllib import request, parse# 请求的urlurl = 'https://baike.baidu.com/item/'name = input('请输入需要查询的名字:')# 对中...原创 2019-01-05 20:34:17 · 294 阅读 · 0 评论 -
1.3简单的post请求
课前说明:本章节请求的 url 部分用 ** 代替1、打开网页 https://fanyi.**.com2、右击 -> 检查 -> 找到network点击 ->输入需要翻译的单词happy3、点击XHR -> 点击sug文件4、找到 Ruquest URL(请求地址)5、拉到底部,找到From Data(post请求需要的参数)6、编写代码:...原创 2019-01-04 19:57:30 · 1071 阅读 · 0 评论 -
1.2我的第一个反爬
反爬:【用户代理】web开发中,同一个url可以对应若干个不同的页面,后台可以根据前端发起的请求头中的用户代理的不用,决定响应给前端什么样的数据。如果用户代理在判断的时候检测到不是我们制定的那几个用户代理,就可以拒绝客户的访问从而达到反爬的目的。针对这种反爬可以通过请求头,请求头中设置用户代理从而伪装成浏览器from urllib import requesturl = 'http...原创 2019-01-03 18:54:51 · 223 阅读 · 0 评论 -
1.1使用urllib发起请求
# 导入urllibfrom urllib import request# 请求地址urlurl = 'http://www.baidu.com/'# 构建请求对象response = request.Request(url=url)# 返回响应对象result = request.urlopen(response)# 打印响应对象内容print(result.read()...原创 2019-01-03 17:29:36 · 256 阅读 · 0 评论