python与爬虫-03初入网络爬虫

1.背景介绍

网络爬虫:形象地说,可以在Web上爬行,本质上是一种递归方式;首先,获取一个URL对应的网页内容,检查此页面,寻找另一个URL,再获取该URL对应的网页内容,然后不断循环这一过程。
注意:需要思考消耗的带宽,能不能不要占用过多的目标服务器,可能是害怕被发现,这样就算是一种攻击了吧!
维基百科六度分隔理论:关于这个的相关内容,可以自行查询,也可以参考https://blog.csdn.net/crazy642535606/article/details/77924753
补充:此理论认为世界上任何互不相识的两人,只需要很少的中间人就能够建立起联系;哈佛大学心理学教授斯坦利·米尔格拉姆尝试证明平均只需要5个中间人就可以联系任何两个互不相识的美国人。
爬虫对维基百科的影响:维基媒体基金会统计,该网站没秒会收到大约2500次点击,网站流量很大,网络爬虫不可能对维基百科的服务器负载产生显著影响。当你准别利用维基百科的数据做一个大型项目,首先要确认该数据不能够通过维基百科API获取的,可能是为了保证不侵权!书上写了,维基百科常被用于演示爬虫,它的API使数据获取更加高效。
PS:为什么,不用百度百科或者360百科呢???

此处介绍两个关于BeautifulSoup的学习文档:
https://www.crummy.com/software/BeautifulSoup/bs3/documentation.zh.html
https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/
在这里插入图片描述在这里插入图片描述
PS:居然可以剖析xml,大概都是基于网页的爬虫吧!

2.案例分析

运行代码:由于书中所用的'http://en.wikipedia.org/wiki/Kevin_Bacon这个链接,打不开出现了如下错误!
在这里插入图片描述
解决办法除了使用前面介绍过的引入URLError排错,主要咱们的目的是为了看出现的效果!所以,换个网址!
分析百度百科的检索链接形式:
官网:https://baike.baidu.com/
龚俊:https://baike.baidu.com/item/龚俊/19919509
温客行:https://baike.baidu.com/item/温客行
徐海乔:https://baike.baidu.com/item/徐海乔
封景:https://baike.baidu.com/item/封景
也就是说百度百科的检索格式为:https://baike.baidu.com/item/+检索项目
PS:我有点好奇,为什么龚俊后面会有一串数字!一会儿用代码实验一下,看看有什么问题!
按照中文格式运行又出问题了!
在这里插入图片描述
就必须变成:
https://baike.baidu.com/item/%E9%BE%9A%E4%BF%8A
https://baike.baidu.com/item/%E9%BE%9A%E4%BF%8A/19919509

网址中的中文转换: https://www.cnblogs.com/xiaofanshao/articles/4924403.html
由%和数字字母组成的有规律性的“乱码”它们并不真是乱码,它们是一种特殊的编码,有电脑基础的人就知道,计算机它是不认得中文汉字的,要让计算机认识这些编码必须要转换成一些字母和数字等组成的代码。都是三个字符一组;排在最前面的是百分号%;是UTF-8编码或者gbk(GB2312)编码,那些百分号(%)后面的数字和字母其实就是16进制数。
中文的gbk(GB2312)编码一个汉字对应三组%xx;中文的UTF-8编码一个汉字对应两组%xx。(PS:这段是摘抄的,我个人觉得有点儿问题!好像写反了!!!!所以我给修改了!)

一个工具:https://tool.oschina.net/encode?type=4,注意使用它的时候,既不能使用gbk,也不能使用utf-8,得使用截图里面的那个内容:
在这里插入图片描述
我查了一下它的原来的函数如下(PS:这个好像是javascript形式的函数!!):

function encode_uri() {
   
	if($("#co_t").attr("checked"))
		$("#result").val
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值