下载数据 - urllib / requests / aiohttp(aiohttp则是基于asyncio实现的HTTP框架)
urllib的request模块可以非常方便地抓取URL内容,也就是发送一个GET请求到指定的页面
get
from urllib import request
request.urlopen('ur')
post
POST发送一个请求,只需要把参数data以bytes形式传入
login_data = parse.urlencode([
('param', 1),
('pagerefer', '看提交的地址')
])
req = request.Request('请求地址')
req.add_header('Origin', '原始地址')
req.add_header('设备')
req.add_header('Referer', '目标地址')
request.urlopen(req, data=login_data.encode('utf-8'))
解析数据 re正则 / lxml / beautifulsoup4(bs4)添加链接描述/ pyquery添加链接描述
lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高
from lxml import etree
etree.HTML()
etree.HTML()可以用来解析字符串格式的HTML文档对象,将传进去的字符串转变成对象
etree.tostring()
etree.tostring()方法用来将对象转换成字符串