Requests爬虫

 目录

1 import requests 2  3 r = requests.get("upload/201810251121595542.gif" alt="复制代码" style="margin: 0px; padding: 0px; max-width: 800px; height: auto; border: none !important;" />

  上面使用get方法就已经得到了网页信息,返回值时200。r字母代表着response,也就是访问网页的响应。网页内的信息可能会有汉字等等,为了方便以后使用,在开始就先说明一下这个,encoding和apparent_encoding在上面解释了,最后是为了使用一个可以把网页正确解析的编码格式。

  一般来说,可以使用r.encoding = 'utf-8'或者r.encoding = r.apparent_encoding。

复制代码
1 # 已经访问到了网页,那么就要看一下提取到的内容 2  3 r.text  # http响应内容的字符串形式,url对应的页面内容 4  5 r.headers  # 返回响应的头部信息 6  7 r.content  # http响应内容的二进制形式 8  9 r.json  # 返回json格式,需要提前导入json包
复制代码

  其中二进制格式,可以方便的存储一些图片格式等等的数据,例如需要下载一个照片,可以使用‘wb’格式写到文件当中,当然也可以直接使用库中的方法。

二、异常处理

  在我们爬取一些网页的时候,经常会遇到一系列的问题,访问不到页面,禁止访问之类的,或者一些自身代码的一些问题。如果代码量很多,或者具体一点,比如正在从网站爬取一些照片。当跑到其中一张图片时没有正常的访问到,那么整个程序就卡在这里了。后续的照片也就无法爬取了。这当然不是我们想要的,因此就需要一些对异常的处理,让他出现异常时,继续执行后续的程序。异常捕获在python的基础里面已经有了,就是用那个在这里应用一下。

复制代码
 1 import requests  2 from requests.exceptions import ReadTimeout, ConnectionError, RequestException  3 try:  4     response = requests.get("http://httpbin.org/get", timeout = 0.5)  5     print(response.status_code)  6 except ReadTimeout:  7     print('Timeout')  8 except ConnectionError:  9     print('Connection error') 10 except RequestException: 11     
                        
关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信