爬虫导图
2023-11-23 16:05:32 12 举报
AI智能生成
登录查看完整内容
非商业用途
作者其他创作
大纲/内容
常见正则表达式符号
贪婪匹配(默认):.*
懒惰匹配:.*?
正则表达式
from bs4 important BeautifulSoup
实例化BeautifulSoup
soup.tagName(第一个标签名)
soup.find_all( tagName) (所有标签)
soup.select( ) (ID,class,标签等选择器,win系统不可用)
BeautifulSoup方法和属性
bs4
from lxml import etree
tree = etree.HTML( page_text )
tree = etree.parse( filePath )(本地html路径)
实例化etree对象
/ 的两种含义
// 的两种含义
[@ ] 查找带属性的标签
@ 查找属性
./ 局部数据解析
| 或表达式
/text 直系内容转化
//text 所有内容转化
element对象转化文本
xpath表达式
r此时为element对象
r = tree.xpath( xpath表达式 )
xpath
step1.指定url
step2.发起请求
step3.获取响应数据
step4.数据解析
step5.持久化存储
五步骤
step1.指定标签定位
step2.提取标签或标签属性值
原理
数据解析
删除:os.remove( )
检验存在:os.exists( )
创建文件/文件夹:os.mkdir( )
删除文件夹:os.rmdir( )
(需要导shutil包)
删除文件夹及子目录:shutil.rmtree( )
os包
open/close
with open
文件打开
读取: json.loap( fp )
Python转json: json.dumps( obj )
json转Python: json.loads( str )
json对象:.json( )
jpg对象(二进制):.content
所有文本:.text
直系文本:.string
html对象:
response.encoding = 'utf-8' / 'gbk'
响应数据修改编码
name = name.encode( iso-8859-1 ).decode( 'gbk')
局部数据乱码修改
中文乱码
数据处理
文件处理
君子协议规定内容可否进行爬取
robots.txt协议
Content-Type(响应数据类型)
响应头:
UA检测
UA伪装
User-Agent
Cookie
Referer
Connection(请求完毕后是否断开链接)
请求头:
http协议
对称密钥加密
非对称密钥加密
证书密钥加密
https协议
爬虫简介
返回状态为text/html
get请求
返回状态为json(text/plain)
ajax请求
post请求:
step4.持久化存储
四步骤
requests模块
爬虫
0 条评论
回复 删除
下一页