python网络爬虫实践_《python 网络爬虫从入门到实践》笔记

一. 爬虫的流程

- requests库 (上手拿它和url lib都可以)

传递url参数时 可以将参数保存到字典中,用params构建至url

requests.get(url,params=dict)

除了get外,有时需要发送一些便码为表单形式的数据,在登陆的时候请求就为post,如果用get,密码会显示在url中,很不安全

r=requests.post(url,data=dict)

-bs4

soup.find(“h1”,class_=“”).text.strip()

-动态网页

打开网页检查功能,选择network,刷新网页, 此时network中会显示浏览器从网页服务器得到的所有文件,这个过程一般称为抓包。

一般数据以json文件格式获取,单击network中的xhr选项,可以找到真正的文件

import json

json_data=json.loadI(r.text)

c_list=json_data[""]  #这是一个列表

-selenium

data=driver.find_element_by_css_selector("div.bdy-inner")

这里bdy-inner 是class的值

也推荐selenium中xpath

-selenium高级操作

使用selenium和使用浏览器的检查方法爬取动态网页相比,因为selenium要在整个网页加载出来后才开始爬取内容,速度往往比较慢

因此在实际使用中,如果使用浏览器的检车功能进行网页的逆向工程不是很复杂,就最好使用浏览器的检查功能,不过也有一些方法可以加快selenium的速度:

①控制 css 的加载

②控制图片文件的显示

③控制 JavaScript 的运行

你可能感兴趣的:(python网络爬虫实践)