这篇文章告诉你:Python网络爬虫是怎么回事

编程入门 行业动态 更新时间:2024-10-23 23:27:52

这篇文章告诉你:Python网络<a href=https://www.elefans.com/category/jswz/34/1770264.html style=爬虫是怎么回事"/>

这篇文章告诉你:Python网络爬虫是怎么回事

在上一篇文章已经给大家介绍了“【用Python自动办公】为什么越来越受到青睐?” 。今天就给大家介绍一下“Python网络爬虫”到底是怎么回事吧!

什么是Python网络爬虫
Python网络爬虫,又被称为网页蜘蛛、网络蚂蚁和网络机器人等。网络爬虫是一种程序,主要用于搜索引擎,它将一个网站的所有内容与链接进行阅读,并建立相关的全文索引到数据库中,然后跳转到另一个网站上。索引擎(Search Engine)是指根绝一定的策略、运用特定的计算机程序从互联网上是搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户索引擎包括全文索引、目录索引、元搜索引擎等。

说白了就是爬虫可以模拟浏览器的行为做你想做的事,订制化自己搜索和下载的内容,并实现自动化操作。比如:浏览器可以下载小说,但是有时候并不能批量下载,那么爬虫的功能就有用武之地了。
 

为什么Python适合做网络爬虫
实现爬虫技术的编程环境有很多种,Java,Python,C++等都可以用来爬虫。但是为什么大家都选择了Python?还是因为Python确实很适合做爬虫,丰富的第三方库十分强大,简单几行代码便可实现你想要的功能;跨平台,对Linux和windows都有不错的支持。更重要的,Python也是数据挖掘和分析的好能手。这样爬取数据和分析数据一条龙的服务都用Python真的很便捷。
 

Python网络爬虫小案例
接下来就用几个实例让大家感受一下Python真正的强大吧。
京东页面爬取


这个简单,京东的这个页面没有给页面审查,可以无障碍地访问它:

import requests
def getHtmlText(url):try:r=requests.get(url)r.raise_for_status()return r.text[:500]except:return 'Error!'
def main():url = '.html'text=getHtmlText(url)print(text)
if __name__ == '__main__':main()

亚马逊页面爬取


这个时候我们用上面的代码发现页面无法访问了,问题在哪?我们可以输出r.encoding和r.apparent_encoding,查看编码是否相同。进一步如果他们相同,那么问题可能出现在amazing页面对访问者审查,我们可以打印request.headers,查看request信息的heads头部:

>>>print(r.request.headers)
{
'User-Agent': 'python-requests/2.23.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*','Connection': 'keep-alive'
}

我们发现我们的程序直接告诉了amazing这是一个’User-Agent’: 'python-requests/2.23.0’机器人访问,因此,我们要更改我们的headers参数为一个标准浏览器身份标识:Mozilla/5.0,代码如下:

import requests
def getHtmlText(url):try:kv={'user-agent':'Mozilla/5.0'}r=requests.get(url,headers=kv)r.raise_for_status()r.encoding=r.apparent_encodingreturn r.textexcept:return 'Error!'
def main():url = ''text=getHtmlText(url)print(text)
if __name__ == '__main__':main()

Python网络爬虫之所以现在越来越受到成人的青睐。一方面是因为它简单易用的语法和网站的快速开发等优点,另一方面是在数据采集方面有好的优势,比如采集速度快,比人来操作可能要快一千倍一万倍都不止等。如果您对网络爬虫感兴趣,欢迎您的随时咨询。

 

更多推荐

这篇文章告诉你:Python网络爬虫是怎么回事

本文发布于:2024-03-09 15:28:44,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1725372.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:爬虫   告诉你   这篇文章   网络   Python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!