网页文章采集工具(安装requests模块installrequests获取网页源码导入模块,简直好用到哭)

优采云 发布时间: 2021-10-07 06:04

  网页文章采集工具(安装requests模块installrequests获取网页源码导入模块,简直好用到哭)

  博客链接

  前言

  过完年无聊,想学Python。我想了很久。从实践的角度来看,我打算边做边学。想了半天,还是写个采集器吧。

  目标是存储采集的内容。因为我是初学者,很多都不懂,所以一切都很简单,目的第一,性能第二。

  文本

  既然要采集,就得先获取网页的源码。其中,使用最多的是urllib和requests模块。其中,requests模块提供的api是最友好的,所以我打算用requests。但是请求是第三方模块。所以

  安装请求模块

  pip 安装请求

  获取网页源代码

  导入 requests 模块并调用 get 方法。如果你不知道http的get、post、put、delete等方法,度娘http协议就懂了。

  简单的说,大部分网页信息都是通过get获取的,提交的信息基本都是post方式。我说的是绝大多数。

  这是一段代码,演示了如何获取主页的源代码。用来哭是那么容易。

  获取源代码

  import requests

res = requests.get('http://www.baidu.com')

print res.text

  结果如下:

  

ç™¾åº¦ä¸€ä¸‹ï¼Œä½ å°±çŸ¥é“ æ–°é—» hao123 地图 视频 贴吧 登录 document.write('登录'); 更多产品 关于百度 About Baidu ©2017 Baidu ä½¿ç”¨ç™¾åº¦å‰å¿…读  意见反馈 äº¬ICP证030173号 

  获取源代码并解码

  源代码是有的,但是中文变得乱码了。本页使用utf-8,所以必须指定编码名称。只有这样程序才能知道使用什么编码来解码和显示它。正确解码才能得到我们想要的内容。所以代码变成了下面这样。

  import requests

res = requests.get('http://www.baidu.com')

res.encoding='utf-8'

print res.text

  结果如下:

  

百度一下,你就知道 新闻 hao123 地图 视频 贴吧 登录 document.write('登录'); 更多产品 关于百度 About Baidu ©2017 Baidu *敏*感*词*  意见反馈 京ICP证030173号 

  现在终于可以看中文了。

  封装成函数

  为了提高复用性,我们打算把它封装成一个函数,比如get_web_source,这样以后可以获取不同的url和code,作为参数传入,才能正确获取源码。所以我是这样写的。

  结果如下:

  

百度一下,你就知道 新闻 hao123 地图 视频 贴吧 登录 document.write('登录'); 更多产品 关于百度 About Baidu ©2017 Baidu *敏*感*词*  意见反馈 京ICP证030173号 

  结果是正确的,收工!

  参考

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线