当前位置: 首页 > news >正文

简单的爬虫脚本编写

一、数据来源分析

想爬取一个网站的数据,我们首先要进行数据分析。通过浏览器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) + '
')

在使用with语句打开文件时,不需要显式调用f.close()来关闭文件。with语句会在代码块执行完毕后自动关闭文件。

http://www.lryc.cn/news/500414.html

相关文章:

  • [MySQL基础](三)SQL--图形化界面+DML
  • 11.23[大数据]
  • C++ 游戏开发进阶:打造更精彩的游戏世界
  • 想在iPad上远程操作安卓手机的APP,怎样实现iPad远程控制安卓?
  • GPS北斗卫星授时服务器功能是什么?应用是什么?
  • 利用Java爬虫获取商品数据的完整指南
  • mysql 迁移达梦数据库出现的 sql 语法问题 以及迁移方案
  • 深入解析css-浮动-学习小结
  • 【机器学习】机器学习的基本分类-无监督学习-K-Means聚类
  • .NET for Android/iOS应用的如何在各自的系统运行
  • 访问django后台,提示CSRF验证失败. 请求被中断403
  • Scala的隐式转换(1)
  • 华为TaurusDB与GaussDB:信创改造的“降本提效”之路
  • Linux网络编程---本地套接字
  • 数据结构之四:堆和二叉树
  • 【论文阅读】国际开源发展经验及其对我国开源创新体系建设的启示
  • redis击穿,穿透,雪崩以及解决方案
  • 时频转换 | Matlab格拉姆角和场Gramian angular summation field一维数据转二维图像方法
  • qt QCryptographicHash详解
  • 亚马逊云科技大语言模型加速OCR应用场景发展
  • 什么是分库?分表?分库分表?
  • QT 中 sqlite 数据库使用
  • 不一样的CSS(4)--icon图标系列之svg
  • Level DB --- Cache
  • 学在西电录播课使用python下载,通过解析m3u8协议、多线程下载ts视频块以及ffmpeg合并
  • Springboot3介绍
  • Oracle 11G DataGuard GAP 修复过程(通过主库scn增备恢复)
  • WLAN AutoConfig服务假死?重启服务恢复网络连接!
  • 【linux】(30)shell-条件判断
  • docker安装启动问题解决排查