四大类
类 | 说明 |
---|---|
urllib.request | 提供打开URLs(大部分是HTTP)的函数和类,如:基本的身份验证,重定向和cookie等。 |
urllib.error | 定义了ulrlib.request引发的异常类。 |
urllib.parse | url地址解析。 |
urllib.robotparse | 根据robots.txt判断哪些数据可以爬取。 |
urllib.request
urllib.request.open()
urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None)
url:网址
data:发给服务器的数据
返回:一个类文件对象
参数 | 默认值 | 含义 |
---|---|---|
url | – | 网址 |
data | None | 一个类文件对象 |
cafile | None | – |
capath | None | – |
cadefault | False | – |
context | None | – |
urllib.request.urlretrieve
urllib.request.urlretrieve(url, filename=None, reporthook=None, data=None)
将url(远程或本地)的文件保存在filename中。
参数 | 默认值 | 含义 |
---|---|---|
url | – | 本地或者远程地址 |
filename | None | 要保存的文件名 |
reporthook | None | 当建立连接或者是获取到一块数据时被调用,有三个参数:接收的数据块,一个数据块的大小,文件的总字节数。 |
data | None | – |
返回 | – | (filename,headers):filename:本地路径,headers:调用urlopen()返回的信息。 |
urllib.error
urllib.parse
urllib.robotparse
当一个搜索蜘蛛访问一个站点时,它首先会检查下这个站点根目录下是否存在robots.txt文件,如果存在,搜索蜘蛛会根据其中定义的爬取范围来爬取。如果没有找到这个文件,那么搜索蜘蛛便会访问所有可直接访问的页面。具体参考:https://www.jianshu.com/p/317b08ccaeb0