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

可狱可囚的爬虫系列课程 14:10 秒钟编写一个 requests 爬虫

一、前言

当重复性的工作频繁发生时,各种奇奇怪怪提高效率的想法就开始萌芽了。当重复代码的模块化封装已经不能满足要求的时候,更高效的方式就被揭开了神秘的面纱。本文基于这样的想法,来和大家探讨如何 10 秒钟编写一个 requests 爬虫程序。

二、curl 概念介绍

curl(Client URL)是一个开源的命令行工具和库,用于在计算机之间传输数据。它支持多种网络协议(如HTTP、HTTPS、FTP、SFTP等),广泛用于测试API、下载文件、调试网络请求等场景。curl 几乎每天都被全球的每个上网人士使用。

三、curl 与 requests 的关联

  1. curl 和 requests 均基于 HTTP 标准协议(如 GET/POST 方法、Header 设置、Cookie传递等),只是实现方式不同。
  2. curl 的命令行参数(如 -H-d-X)与 requests 库提供的参数几乎一一对应。
  3. requests 库将 curl 的复杂命令封装成更易读的 Python 对象和方法(例如requests.get()requests.json())。

四、curl 转 requests

有这样一个网站,可以把 curl 转为 requests,当然,这个代码也可以自己来写。暂时我们使用网站进行转换:

https://curlconverter.com

如下图所示,这个网站可以将 curl 命令转成很多语言的版本。

五、10 秒写一个爬虫程序

我们用可狱可囚的爬虫系列课程 08:新闻数据爬取实战中爬过的中国新闻网来举例:需要先复制此网站的 curl 命令,参考下图:

在这里插入图片描述

curl 命令复制完成以后,放入到 curl 转换网站中,复制结果即可,如图:

就这样,一个快速的针对特定网站的 requests 请求就编写完成了!

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

相关文章:

  • Windows golang安装和环境配置
  • IP-------GRE和MGRE
  • LabVIEW形状误差测量系统
  • django校园互助平台~源码
  • Vue进阶之AI智能助手项目(五)——ChatGPT的调用和开发
  • Jenkins重启后Maven的Project加载失败
  • 【docker】docker pull拉取中不断重复下载问题,解决方案之一,磁盘空间扩容
  • Ubuntu指令(一)
  • nnUNet V2修改网络——加入MultiResBlock模块
  • Spring Boot + Vue 接入腾讯云人脸识别API(SDK版本3.1.830)
  • 【SpringSecurity】springboot整合SpringSecurity实现登录校验与权限认证
  • 【HarmonyOS Next】鸿蒙应用公钥和证书MD5指纹的获取
  • 父组件用的是原生监听,子组件用的是onClick,子组件添加了stopPropagation还是没有阻止传播
  • ui设计公司兰亭妙微分享:科研单位UI界面设计
  • python绘制年平均海表温度、盐度、ph分布图
  • windows中kafka集群部署示例
  • 获取GitHub的OAuth2的ClientId和ClientSecrets
  • self-attention部分代码注释
  • idea里的插件spring boot helper 如何使用,有哪些强大的功能,该如何去习惯性的运用这些功能
  • 常用的配置文件格式对比(ini,toml,yaml,json,env,settings.py)及应用程序修改自身配置并保留注释
  • Java IO 和 NIO 的基本概念和 API
  • 小智AI桌宠机器狗
  • MySQL 入门“鸡”础
  • Redis 中有序集合(Sorted Set)的使用方法
  • WIn32 笔记:本专栏课件
  • Unity git 获取当前修改或者新增的文件列表
  • 结构型模式 - 桥接模式 (Bridge)
  • 如何让传统制造企业从0到1实现数字化突破?
  • 【Elasticsearch】script_fields 和 runtime_fields的区别
  • 城电科技|会追日的智能花,光伏太阳花开启绿色能源新篇章