怎样使用requests模块抓取网页?

爬取网页其实就是通过URL获取网页信息,网页信息的实质是一段添加了JavaScript和CSS的HTML代码。Python提供了一个抓取网页信息的第三方模块requests,requests模块自称“HTTP for Humans”,直译过来的意思是专门为人类而设计的HTTP模块,该模块支持发送请求,也支持获取响应。

1.发送请求

requests模块提供了很多发送HTTP请求的函数,常用的请求函数具体如表10-1所示。

表10-1 requests模块的请求函数

怎样使用requests模块抓取网页?

2.获取响应

requests模块提供的Response 类对象用于动态地响应客户端的请求,控制发送给用户的信息,并且将动态地生成响应,包括状态码、网页的内容等。接下来通过一张表来列举Response类可以获取到的信息,如表10-2所示。

表10-2 Response 类的常用属性

怎样使用requests模块抓取网页?

接下来通过一个案例来演示如何使用requests模块抓取百度网页,具体代码如下:

# 01 requests baidu import requests base_url = http://www.baidu.com #发送GET请求 res = requests.get (base_url) print(“响应状态码:{}”.format(res.status_code)) #获取响应状态码 print“编码方式:{}”.format(res.encoding)) #获取响应内容的编码方式 res.encoding = utf-8 #更新响应内容的编码方式为UIE-8 print“网页源代码:n{}”.format(res.text)) #获取响应内容

以上代码中,第2行使用import导入了requests模块;第3~4行代码根据URL向服务器发送了一个GET请求,并使用变量res接收服务器返回的响应内容;第5~6行代码打印了响应内容的状态码和编码方式;第7行将响应内容的编码方式更改为“utf-8”;第8行代码打印了响应内容。运行程序,程序的输出结果如下:

响应状态码:200 编码方式:ISO-8859-1 网页源代码: <!DOCTYPE html> <!–-STATUS OK–><html> <head><meta http-equiv=content-type content=text/html; charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content= always name=referrer><link rel=stylesheet type=text/css href=http://s1.bdstatic. com/r/www/cache/bdorz/baidu.min.css><title>百度一下,你就知道</title></head> <body link=#0000cc>…省略N行…</body></html>

值得一提的是,使用requests模块爬取网页时,可能会因为没有连接网络、服务器连接失败等原因导致产生各种异常,最常见的两个异常是URLError和HTTPError,这些网络异常可以使用 try…except 语句捕获与处理。

免责声明:文章内容来自互联网,本站仅作为分享,不对其真实性负责,如有侵权等情况,请与本站联系删除。
转载请注明出处:怎样使用requests模块抓取网页? https://www.dachanpin.com/a/cyfx/10871.html

(0)
上一篇 2023-05-12 02:26:42
下一篇 2023-05-12 02:27:46

相关推荐

  • 80后帅气CEO讲述留学归国创业经历:经常忙到没时间吃饭

    如今,另外两个合伙人主要是在公司大的发展方向上把关,公司具体运营都是他一个人在负责。未来,他将持续“小而美”的定位,不盲目扩张,稳当地发展,站稳中国留学的高端市场。 北京时间下午3点,钱虎草草地吃完了今天的第一餐,一个草莓土司,一杯柳橙汁,简单快捷,最重要的是填饱了已饿得咕咕直叫的肚子。虽说创业已三年,公司也走上了正轨,有七十多个员工,但他还是会忙到没时间吃…

    2023-05-21
    201
  • 2018年“创青春”全国大学生创业大赛启动

    本报讯(中国青年报·中青在线记者李立红)4月27日上午,2018年“创青春”浙大双创杯全国大学生创业大赛第一次新闻发布会在浙江大学召开。 本届大赛经全国组委会同意,采用“主体赛+专项赛+配套活动”的赛事安排,其中主体赛及配套活动将于今年11月在浙江大学举行,专项赛将于今年7月在浙江师范大学举行。 目前,筹备工作有序开展,完成大赛浙江省组委会组建工作,明确了职…

    创业分享 2023-05-18
    155
  • 什么是Illustrator?初始化设置和工作界面简介

    Illustrator是矢量图绘制软件,主要用于图形的制作,如印刷品的输出(书籍、包装、彩页等)、企业VI手册设计(企业形象识别系统)、企业LOGO设计、矢量插画等。 Illustrator初始化设置1、工作区布局 Illustrator工具的工作布局主要分为“基本功能”、“排版版面”、“描摹”等类别。其中“基本功能”是Illustrator默认的工作区布局…

    2023-05-12
    121
  • 宁夏全力保障建档立卡贫困户就业创业

      记者从宁夏人社部门获悉,宁夏去年实施精准就业扶贫政策,多措并举全力保障建档立卡贫困户就业创业。     据介绍,宁夏人社部门进一步扩大闽宁劳务协作,创新出台“铁杆庄稼保”举措,开展就业扶贫“百千万”行动,实行精准脱贫技能培训计划,组织4.2万劳动力参加职业技能鉴定考核,其中3.6万人取得证书。新创建就业扶贫示范基地…

    创业分享 2023-05-12
    136
  • 吉林丰满:20名创业者提升网创能力

    为提升创业者网络创业能力,吉林市丰满区于7月16日在吉林市筑巢职业培训学校举办首期网络创业培训班,全区20名创业者参加了此次培训,此次培训培训学期为7天,邀请专业讲师采取翻转课堂、学习互助小组等多元化培训手段,依托教学辅助平台或互联网平台,对创业者进行互联网渠道创业的专业化指导和系统化训练,帮助创业者建立互联网创业思维,了解网络创业原理和创业流程,熟悉网络创…

    创业分享 2023-06-02
    160

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

工作时间:周一至周五,9:30-16:30,节假日休息