zoukankan
html css js c++ java
爬虫基础总结1
html
爬虫基础
概念
模拟浏览器发送网络请求,获取响应
分类
通用爬虫
搜索引擎的爬虫,面对整个互联网上所有的网站
聚焦爬虫
针对特定网站的爬虫
分类标准:爬虫爬取的范围
流程
1.url
2.发送请求,获取响应 (提取url地址,发送下一次请求)
3.提取数据
保存
rebots协议
道德层面的约束
数据应用
展示数据
进行数据分析等后续工作
HTTPS和HTTP
概念
https: http+ssl
http: 超文本传输协议
https更安全,性能更低
浏览器发送请求的流程
1.url
2.dns服务器获取域名的ip地址
3.请求ip
url对应的响应+css+js+png
注意:浏览器渲染出来的内容(elements)和url地址对应的响应不一样
url
协议
瞄点加不加,返回的响应一样
http协议的内容
1.请求行
2.请求头
User-Agent
用户代理。告诉服务器当前发送请求的是什么样的程序
Cookies
1.获取登录后的页面
2.对方的服务器通过cookie判断程序是否为爬虫
3.请求体
Post请求才有请求体
请求方法
get
post
表单
发送的数据量比较大的时候 (参数较多)
状态码
200:成功
302,307:重定向
404:资源不存在
500:服务器内部错误
字符串处理
str bytes.decode()
bytes str.encode()
Ascii,gbk,unicode字符集
Ascii使用一个字节表示一个字符,unicode使用2个字节表示一个字符
utf-8是unicode的一种实现方式,可变长的编码方式
requests
发送请求
requests.get(url)
获取响应的html字符串
response.content
bytes
response.content.decode()
response.text
str
response.encoding来指定编码格式
解决requests中编码的问题
response.content.decode()
resopnse.content.decode('gbk')
response.text
gbk<gb2312<gb18030
查看全文
相关阅读:
[leetcode-604-Design Compressed String Iterator]
[leetcode-617-Merge Two Binary Trees]
OpenCV学习1-----打开摄像头并在画面上添加水印
cvCvtColor与cvtColor区别
[leetcode-547-Friend Circles]
[leetcode-260-Single Number III]
复位电路
单片机特殊功能寄存器
单片机的定时器与计数器
单片机定时/计数工作方式
原文地址:https://www.cnblogs.com/wsilj/p/12735281.html
最新文章
spring概述
FreeMarker的空值运算符和逻辑运算符
FreeMarker内建函数
FreeMarker之FTL指令
Freemarker入门
网页静态处理技术FreeMarker概述
之江学院第0届校赛 qwb与支教 (容斥公式)
矩阵快速幂基础讲解
第一个java的小东西
最短路算法详解(Dijkstra,Floyd)
热门文章
河南省第十届省赛 Plumbing the depth of lake (模拟)
河南省第十届省赛 Binary to Prime
河南省第十届省赛 最小秘钥
河南省第十届省赛 谍报分析
河南省第十届省赛 情报传递
河南省第十届省赛 年终奖金
[leetcode-447-Number of Boomerangs]
[leetcode-516-Longest Palindromic Subsequence]
[leetcode-409-Longest Palindrome]
[leetcode-611-Valid Triangle Number]
Copyright © 2011-2022 走看看