一、数据来源分析
想爬取一个网站的数据,我们首先要进行数据分析。通过浏览器F12开发者工具栏进行抓包,可以分析我们想要的数据来源。
通过关键字搜索,可以找到相对应的数据包
二、爬虫实现
需要用到的模块为:request,parsel
1.发送请求
模拟浏览器对于分析得到的URL地址发送请求,返回响应包
url = 'https://example.com'
#浏览器F12查看网络,请求头中可以查看User-Agent,目的是实现浏览器标识,请求合法化
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:132.0) Gecko/20100101 Firefox/132.0'}
#使用request,将响应数据传入res变量
res = requests.get(url=url,headers=headers)
2.获取数据
获取响应的数据包
#创建Selector对象后,你可以使用它来提取网页中的特定数据。例如,你可以使用XPath或CSS选择器来查找元素:
selector = parsel.Selector(res.text)
3.解析数据
解析数据内容,获取我们想要的内容。
创建Selector对象后,你可以使用它来提取网页中的特定数据。可以使用XPath或CSS选择器来查找元素
trs = selector.css('CSS选择器')#遍历每一组数据for tr in trs:#获取每一行的第一个数据first = tr.css('td:nth-child(1)::text').get()#将每一个数据写插入列表example_list.append(first)
4.保存数据
将爬取下来的目标数据进行保存.
with open('example.txt','w',encoding=utf-8') as f:for item in example.list:f.write(str(item) + '\n')
在使用with
语句打开文件时,不需要显式调用f.close()
来关闭文件。with
语句会在代码块执行完毕后自动关闭文件。