Python爬虫(2) --爬取网页页面

[复制链接]
发表于 2026-2-19 14:27:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
爬虫

Python 爬虫是一种自动化工具,用于从互联网上抓取网页数据并提取有效的信息。Python 因其轻巧的语法和丰富的库支持(如 requests、BeautifulSoup、Scrapy 等)而成为实现爬虫的首选语言之一。
Python爬虫获取欣赏器中的信息,现实上是模拟欣赏器上网的举动。完成获取信息须要完成三步:

  • 指定url
  • 发送哀求
  • 获取你想要的数据
好比我们爬取一个网站的页面:
  1. https://www.sogou.com/
复制代码
URL

URL(Uniform Resource Locator,同一资源定位符)是互联网上用来标识资源的字符串,它告诉Web欣赏器或其他网络步调怎样访问特定的文件或网页。简朴来说,URL就是网页的地点。
那我们怎么探求网页的url呢?
欣赏器中找到网页页面,点击按钮F12进入开辟者控制台(Developer Console)。

第一步点击Network,第二步革新页面,第三步滚动滚轮找到最上面的一项打开:
我们可以看到:网页的url地点、以及它的哀求方式是get哀求、Status Code在200和300是属于正常的、范例是text/html情势的。
好,那我们先指定url地点:
  1. url = "https://www.sogou.com/
  2. "
复制代码
发送哀求

找到网址之后,我们固然得要获取它,如许我们就须要申请访问它的网址。
访问别人,固然自己得有个身份,怎么为自己伪装一个身份呢?
UA伪装

在python内下载fake_useragent包,这内里是别人以及写好的UA,利用这个包会为我们随机提供一个身份。
  1. pip install fake_useragent
复制代码
下载好之后导入包:
  1. import fake_useragent
复制代码
接下来运用这个包来举行UA伪装:
  1. head = {
  2.     "User-Agent":fake_useragent.UserAgent().random                #"User-Agent"固定写法哦
  3. }
复制代码
如许我们就有身份来发生哀求啦!
requests

在Python中,发生哀求利用requests方法。利用这个方阿飞之前呢,我们也还须要安装一个requests包:
  1. pip install requests
复制代码
下载好之后导入包:
  1. import requests
复制代码
接下来我们来利用这个包来发送哀求:
  1. response = requests.get(url,headers=head)
  2. #以head的伪装身份访问url,将返回的数据放在response对象内
复制代码
如许我们就哀求完成了。
获取想要的数据

之前我们在开辟者控制台中看到,网页的范例是text/html情势的。
哀求完成之后,我们将哀求到的内容罗致一下:
  1. res_text = response.text
  2. print(res_text)
  3. --------------------
  4. print(response.status_code)
  5. #可以加上这个代码,验证请求是否成功:
  6. 200:请求成功。通常表示服务器成功返回了请求的网页。
  7. 404:未找到。通常表示服务器无法找到请求的资源(网页)。
  8. 500:内部服务器错误。通常表示服务器遇到了一个意外情况,导致其无法完成对请求的处理。
复制代码
将罗致到的内容打印出来。
打开网页

在PyCharm中,创建一个HTML文本,将罗致打印出来的数据内容复制进HTML文本中:

进入HTML文本,右上角会有欣赏器浮现,选择你要利用的欣赏器打开,就会进去获取的网页中。
总结

本篇先容了:怎样爬取网页的一个页面。

  • 指定url
  • 发送哀求:requests哀求方法

    • UA伪装:利用fake_useragent包,为自己提供身份

  • 获取想要的数据:将数据罗致处置惩罚
完备代码

  1. import fake_useragent
  2. import requests
  3. if __name__ == '__main__':    #UA伪装  让你以为我是一个欣赏器    head = {        "User-Agent":fake_useragent.UserAgent().random    }        # 1、指定url    url = "https://www.sogou.com/
  4. "    # 2、发送哀求    返回的数据在response对象内    response = requests.get(url,headers=head)    #3、获取想要的数据    res_text = response.text    print(res_text)
复制代码
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表