1.网络爬虫的基本概念

网络爬虫(又称网络蜘蛛,机器人),就是模拟客户端发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。

只要浏览器能够做的事情,原则上,爬虫都能够做到。

2.网络爬虫的功能

  图2

网络爬虫可以代替手工做很多事情,比如可以用于做搜索引擎,也可以爬取网站上面的图片,比如有些朋友将某些网站上的图片全部爬取下来,集中进行浏览,同时,网络爬虫也可以用于金融投资领域,比如可以自动爬取一些金融信息,并进行投资分析等。

有时,我们比较喜欢的新闻网站可能有几个,每次都要分别打开这些新闻网站进行浏览,比较麻烦。此时可以利用网络爬虫,将这多个新闻网站中的新闻信息爬取下来,集中进行阅读。

有时,我们在浏览网页上的信息的时候,会发现有很多广告。此时同样可以利用爬虫将对应网页上的信息爬取过来,这样就可以自动的过滤掉这些广告,方便对信息的阅读与使用。

有时,我们需要进行营销,那么如何找到目标客户以及目标客户的联系方式是一个关键问题。我们可以手动地在互联网中寻找,但是这样的效率会很低。此时,我们利用爬虫,可以设置对应的规则,自动地从互联网中采集目标用户的联系方式等数据,供我们进行营销使用。

有时,我们想对某个网站的用户信息进行分析,比如分析该网站的用户活跃度、发言数、热门文章等信息,如果我们不是网站管理员,手工统计将是一个非常庞大的工程。此时,可以利用爬虫轻松将这些数据采集到,以便进行进一步分析,而这一切爬取的操作,都是自动进行的,我们只需要编写好对应的爬虫,并设计好对应的规则即可。

除此之外,爬虫还可以实现很多强大的功能。总之,爬虫的出现,可以在一定程度上代替手工访问网页,从而,原先我们需要人工去访问互联网信息的操作,现在都可以用爬虫自动化实现,这样可以更高效率地利用好互联网中的有效信息。

3.安装第三方库

在进行爬取数据和解析数据前,需要在Python运行环境中下载安装第三方库requests。

在Windows系统中,打开cmd(命令提示符)界面,在该界面输入pip install requests,按回车键进行安装。(注意连接网络)如图3

图3

安装完成,如图4

图4

4.爬取淘宝首页

1 #请求库

2 importrequests3 #用于解决爬取的数据格式化

4 importio5 importsys6 sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')7 #爬取的网页链接

8 r= requests.get("https://www.taobao.com/")9 #类型

10 #print(type(r))

11 print(r.status_code)12 #中文显示

13 #r.encoding='utf-8'

14 r.encoding=None15 print(r.encoding)16 print(r.text)17 result = r.text

运行结果,如图5

图5

5.爬取和解析淘宝网首页

1 #请求库

2 importrequests3 #解析库

4 from bs4 importBeautifulSoup5 #用于解决爬取的数据格式化

6 importio7 importsys8 sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')9 #爬取的网页链接

10 r= requests.get("https://www.taobao.com/")11 #类型

12 #print(type(r))

13 print(r.status_code)14 #中文显示

15 #r.encoding='utf-8'

16 r.encoding=None17 print(r.encoding)18 print(r.text)19 result =r.text20 #再次封装,获取具体标签内的内容

21 bs = BeautifulSoup(result,'html.parser')22 #具体标签

23 print("解析后的数据")24 print(bs.span)25 a={}26 #获取已爬取内容中的script标签内容

27 data=bs.find_all('script')28 #获取已爬取内容中的td标签内容

29 data1=bs.find_all('td')30 #循环打印输出

31 for i indata:32 a=i.text33 print(i.text,end='')34 for j indata1:35 print(j.text)

运行结果,如图6

图6

7.小结

在对网页代码进行爬取操作时,不能频繁操作,更不要将其设置成死循环模式(每一次爬取则为对网页的访问,频繁操作会导致系统崩溃,会追究其法律责任)。

所以在获取网页数据后,将其保存为本地文本模式,再对其进行解析(不再需要访问网页)。

python解析网页数据_python爬虫——爬取网页数据和解析数据相关推荐

  1. python 搜索网页数据_python爬虫爬取网页所有数据

    技术文档 主体内容:可以认为是页面最想表达的内容总和.对于内容详情页来说,主体内容指从标题开始至正文内容结束,翻页区域也被视为主体内容,文章后的评论.分享.推荐等不视为主体内容. 首屏:用户点击搜索结 ...

  2. python爬取bilibili弹幕_Python爬虫爬取Bilibili弹幕过程解析

    先来思考一个问题,B站一个视频的弹幕最多会有多少? 比较多的会有2000条吧,这么多数据,B站肯定是不会直接把弹幕和这个视频绑在一起的. 也就是说,有一个视频地址为https://www.bilibi ...

  3. python爬表格数据_python爬虫,爬取表格数据

    python爬虫,爬取表格数据 python爬虫,爬取表格数据 python爬虫,爬取全国空气质量指数 编程环境:Jupyter Notebook 所要爬取的网页数据内容如下图 python爬虫代码及 ...

  4. python爬取js加载的数据_Python爬虫:爬取JS加载数据的网页

    比如简书: Paste_Image.png 我们来写个程序,爬取简书网站随便一个作者的所有文章,再对其所有文章进行分词统计 程序运行统计的结果见文章: 我统计了彭小六简书360篇文章中使用的词语 需要 ...

  5. python爬虫股票上证指数_Python爬虫爬取搜狐证券股票数据

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于IT信息教室,作者:M先森看世界 数据的爬取 我们以上证50的股票为例,首先需 ...

  6. python爬网页源码_python爬虫爬取网页的内容和网页源码不同?

    可以看到这里id为k_total的元素值不同,爬出来是1,网页源码是55. 附还未完成的代码:import requests from bs4 import BeautifulSoup import ...

  7. python找电影资源_Python爬虫爬取BT之家找电影资源

    head.jpg 一.写在前面 最近看新闻说圣城家园(SCG)倒了,之前BT天堂倒了,暴风影音也不行了,可以说看个电影越来越费力,国内大厂如企鹅和爱奇艺最近也出现一些幺蛾子,虽然目前版权意识虽然越来越 ...

  8. python全网表情包_Python爬虫爬取最右公众号表情包资源

    某天上厕所刷手机,看到最右公众号里面有一个表情包资源合集 点进去发现有70多期表情包,突然就想到了最近学的爬虫,立马跑回去打开电脑准备看能不能全部爬下来. 我的想法是先找到这70多期的url链接,然后 ...

  9. python二手房使用教程_python爬虫爬取链家二手房信息

    #coding=utf-8 import requests from fake_useragent import UserAgent from bs4 import BeautifulSoup imp ...

最新文章

  1. python多版本共存使用pip
  2. java编程思想(第四版)第二章练习题-12
  3. 题目1189:还是约瑟夫环
  4. 事件标志组的删除与状态查询
  5. openstack 网络简史
  6. 分库分表下极致的优化
  7. 空气加热的力量可以让人飞起来吗?
  8. 想不到,那些让我半夜偷偷收藏的沙雕表情包,竟是出自AI之手
  9. 在JDK 10中不可变与不可修改
  10. 6.11python 作业
  11. php socket 基础知识
  12. Python提取 Gprmax 3.0 的out文件数据
  13. python怎样编写姓名、职业、地址_如何根据姓名、地址识别人际关系,然后通过linux comman或Pysp分配相同的ID...
  14. Python入门教程丨1300多行代码,让你轻松掌握基础知识点
  15. SQL注入原理解说,非常不错!
  16. Java编程思想基本介绍
  17. python开头声明_python开头——文件声明 详解
  18. 王子救公主(DFS)
  19. Android中Kotlin面试问题讲解
  20. 计算机语言学专业排名,2019QS世界大学学科排名,澳洲语言学专业排名Top200

热门文章

  1. Heap和Heapify
  2. pta 6-8 使用函数求Fibonacci数 (15 分)
  3. Ajax传递数组对象
  4. python6翻了_Python-6.BeautifulSoup网络爬虫
  5. linux install jkd
  6. 十分钟,让你了解DSP/DMP/SSP
  7. Python——列表和元组
  8. [mit6.1810] Lab system calls
  9. 【屌丝之作】3D遥控坦克大战
  10. win10下安装多个JDK配置方法