爬虫案例
- 12306抢票
爬虫可以从12306的合作网站 比如:携程网 去哪儿 进行火车票购票
- 网站上的投票
使用爬虫进行微博刷榜 用户 ip cookie
- 短信轰炸
不推荐
- 京东商户爬虫
将淘宝商家发布的商品数据 通过爬虫爬取到 然后发布到京东的后台
商品爬虫 填写淘宝网后台的账号密码
- 文章类型的网站
微信公众号 作者会发布很多文章 百度搜索不到这些文章
使用爬虫爬取到这些文件 发布到自己的网站上 这样做成一个自动化的文章网站
然后既可以通过放至广告就可以得到广告收入
爬虫的分类
通用爬虫 :通常指搜索引擎的爬虫
聚焦爬虫 :针对特定网站的爬虫
根本区别是用户不同
pr算法 pagerank
python
今天我学习了<a href="https://www.python.org">python</a>. .....
今天我学习了<a href="https://www.python.cn">python</a>. .....
robots协议
robots.txt
User-anget: Baiduspider
Allow: /product
Allow: /photo
Disallow: /admin
锚点
http://item.jd.com/11936238.html
http://item.jd.com/11936238.html#product-detail
注意事项
浏览器Elements中内容是经过js修改后的内容,跟爬虫获取的内容不一样,爬虫获取的内容是右键"查看源代码"中的内容
HTTP GET请求
GET /login/doSuccess?id=100 HTTP/1.1
Host: ntlias3.boxuegu.com
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8
Referer: http://ntlias3.boxuegu.com/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cookie: remember_pwd_username=zhaoshuailin@itcast.cn; remember_pwd_passowrd=%3D%3D; SESSION=4e20-a25d-99cfbf778a96
HTTP POST请求
POST /login HTTP/1.1 // 请求行
Host: ntlias3.boxuegu.com // 请求头 请求头有多行
Connection: keep-alive
Cache-Control: max-age=0
username=admin&password=admin123 // 请求体
GET请求的参数在url里边 POST请球的参数在你什么地方?
请求体
状态码
- 1xx:临时请求 请求未完成
- 2xx:成功
- 3xx:临时xxx
- 4xx:请求有问题
- 5xx:服务器内部错误
字符集
ASCII: 0-9a-zA-Z特殊符号
GBK: 0-9a-zA-Z特殊符号 阿-作
日本编码
韩国编码
Unicode: 0-9a-zA-Z特殊符号 日本编码韩国编码 俄罗斯 阿拉伯
字符编码
字符编码不是字符的集合 是unicode字符集的编码形式
常见字符编码: utf-8 utf-16 utf-32
python3中的字符串扩展知识
python代码文件的编码: 默认utf-8
python3内部(内存中)使用的编码: utf-16
输出的编码: 检测当前环境 自动转码输出的文本
chcp 65001 转换为utf-8编码
requests模块是第三方模块
需要使用pip进行安装
pip install requests
代码如下:
import requests
resposne = requests.get("https://www.baidu.com/")
print(resposne.content.decode())
练习:把网络上的图片保存到本地
以什么方式打开文件
保存什么格式的内容