python爬虫三大库,requests,lxml,beautiful.

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

三大库:requests,lxml,beautifulSoup.

Request库作用:请求网站获取网页数据。

get()的基本使用方法

python爬虫三大库,requests,lxml,beautiful._第1张图片

加入请求头伪装成浏览器

python爬虫三大库,requests,lxml,beautiful._第2张图片

post()的基本使用:用于提交表单来爬取需要登录才能获得数据的网页。

增加健壮性和效率

 Requests库的错误和异常分四种:自己分为两种①未发出Reques②未收到Html

当发现这些错误或异常进行代码修改重新再来,爬虫重新再来,有些数据又爬一次。效率和质量低。

python爬虫三大库,requests,lxml,beautiful._第3张图片

beautifulSoup()库的作用:①解析requests库请求的网页,把网页源代码解析成soup文档。②初步提取

①解析requests库请求的网页,把网页源代码解析成soup文档,得到标准缩进格式的结构输出,为进步处理准备。

python爬虫三大库,requests,lxml,beautiful._第4张图片

②初步提取

find_all和find()的区别:查询一个或查询所有。使用方法一样,没有具体事例可能用的不多。

 根据标签名提取内容

soup.find_all('div',"item")

soup.find_all('div',class='item')

soup.find_all('div',attrs={"class":"item"})

selector():根据路径查询数据

soup.selector( div > div > div.lay.first > div.list_li.\30 > a > img)

div是标签名,list_li.\30是属性class的值

多分支标签中不能使用child要改为type

li:nth-child(1)需改为li:nth-of-type(1)

③get_text()方法:提取标签内容去掉头尾,5456      =>    5456

python爬虫三大库,requests,lxml,beautiful._第5张图片

你可能感兴趣的:(Python爬虫,python)