Python——网络爬虫

 此篇文章继续跟着小甲鱼的视频来初学网络爬虫,除了小甲鱼的网站上可下载视频,发现b站上也有全套的视频哦,会比下载来的更方便些。

网络爬虫,又称为网页蜘蛛(WebSpider),非常形象的一个名字。如果你把整个互联网想象成类似于蜘蛛网一样的构造,那么我们这只爬虫,就是要在上边爬来爬去,顺便获得我们需要的资源。我们之所以能够通过百度或谷歌这样的搜索引擎检索到你的网页,靠的就是他们大量的爬虫每天在互联网上爬来爬去,对网页中的每个关键词进行索引,建立索引数据库。在经过复杂的算法进行排序后,这些结果将按照与搜索关键词的相关度高低,依次排列。

1 urllib模块

urllib模块实际上是综合了url和lib的一个包。

url的一般格式为:

protocol://hostname[:port]/path/[;parameters][?query]#fragment

URL 由三部分组成:

第一部分是协议:http,https,ftp,file,ed2k…

第二部分是存放资源的服务器的域名系统或IP地址(有时候要包含端口号,各种传输协议都有默认的端口,如http的默认端口是80)

第三部分是资源的具体地址,如目录或者文件名等

举一个例子说明:

复制代码
import urllib.request response = urllib.request.urlopen("http://www.fishc.com") html = response.read() print(html) #二进制数据  html = html.decode('utf-8') #对二进制数据解码 print(html)
复制代码

当遇到不了解的模块时,可通过IDLE中Help中打开Python的文档进行搜索查看,也可以使用print(模块名.__doc__)或者help(模块名)进行属性和使用方法的查看。如下为文档中urlopen的用法:

实例1:在placekitten网站下载一只猫的图片

复制代码
import urllib.request response = urllib.request.urlopen("upload/201711241008438488.jpg','wb') as f:     f.write(cat_img)
复制代码

可看到在当前运行目录下已成功下载了图片。

urlopen的url参数既可以是字符串也可以是一个request对象,则我们还可以将代码写成如下形式:

复制代码
import urllib.request req = urllib.request.Request("upload/201711241008447643.jpg','wb') as f:     f.write(cat_img)
复制代码

实例2:利用百度翻译进行翻译

小甲鱼的视频中的实例是有道翻译,运行结果如下:

关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信