路飞学城-python爬虫密训-第一章
(一)学习体会
通过本章学习让我初步打开python爬虫的大门,觉得自己以前复制黏贴是有多low。当然由于对web网页编程了解甚少,没有办法一气呵成去爬取想要东西。由于这几天时间有限,先看懂视频中调用方式,之后要不上web相关知识才可以更加有针对性去获取自己想要的信息,才能做到举一反三。
(二)知识点总结
1.爬虫介绍,什么是爬虫?
编写程序,根据URL获取网站的信息(百度提交入口)
2.爬取汽车之家新闻
主要步骤如下:
1)伪造浏览器向某个地址发送HTTP请求,获取返回的字符串
pip3 install requests 加载requests模块
主要代码:
下载页面
import requests
ret=requests.get(url="")
ret=encoding=ret.apparent_encoding
2)bs4解析HTML格式的字符串
pip3 install beautifulsoup4 加载bs4模块
主要代码:
解析:获取想要的指定内容
from bs4 import BeautifulSoup
soup(对象)=BeautifulSoup(ret.text,"html.parser")
div=soup.find(name="div",id=" ")
print(div)
li_list(列表)=div.find_all(name='i1‘)
print(li_list)
for li in li_list:
h3=li.find(name='h3')
if not h3:
continue
3.自动登陆抽屉并点赞
主要使用requests模块中get、post、url、headers、data、cookies参数
主要设计代码思路:
1)先访问抽屉新热榜,获取cookie(未授权)
2)发送用户名和密码认证+cookie(未授权)
3)解析点赞行为发生过程
进一步加深:如何获取当页所有新闻以及多页面新闻
主要思路:主要是用for循环以及在url网页地址加上%s %nid 或者%s %page_num
老师也提过递归也可以做,希望以后自己熟悉之后可以试一试
4.requests模块总结
主要用到参数:
url:地址 params:url中传入参数
headers:请求头
cookies:cookie
data:数据
proxies:封IP,用代理
requests.get(url=",params={},headers={},cookies={})
requests.post(url=",params={},data={},headers={},cookies={})
json参数主要作用
data=json.dumps({})
param files参数 :上传文件
param timeout 参数: 超时时间
auth参数: 基本认证
stream参数:下载大文件时
cert参数:证书(小的网站,有https:网站不需要)
verify:确认
当然详细可以参考线下笔记,这里主要记录的是思路与要点