追魂呼死你,数位板绘画教程,魔兽电影彩蛋
今
日
鸡
汤
只愿君心似我心,定不负相思意。
一、前言
在使用Python爬虫时,必要模拟发起收集哀求,主要用到的库有requests库和python内置的urllib库,一般建议使用requests,它是对urllib的再次封装。
那它们两者有什么区别 ?
下面通过案例详细的注解 ,认识他们使用的主要区别。
二、urllib库
简介:
urllib库的response对象是先建立http,request对象,装载到reques.urlopen里完成http哀求。
返回的是http,response对象,现实上是html属性。使用.read().decode()解码后转化成了str字符串类型,decode解码后中笔墨符可以表现出来。
例
运行效果:
注意:
平日爬取网页,在构造http哀求的时候,都必要加上一些额外信息,什么Useragent,cookie等之类的信息,或者添加代理服务器。往往这些都是一些需要的反爬机制。
三、requests库
简介:
requests库调用是requests.get方法传入url和参数,返回的对象是Response对象,打印出来是表现响应状态码。
通过.text 方法能够返回是unicode 型的内容,一般是在网页的header中界说的编码形式,而content返回的是bytes,二级制型的内容,还有 .json方法也能够返回json字符串。
如果想要提取文本就用text,然则如果你想要提取图片、文件等二进制文件,就要用content,当然decode之后,中笔墨符也会正常表现。
requests的上风:
Python爬虫时,更建议用requests库。因为requests比urllib更为便捷,requests能够直接构造get,post哀求并发起,而urllib.request只能先构造get,post哀求,再发起。
例:
运行效果 (能够直接获取整网页的信息,打印掌握台):
四、总结
本文基于Python根蒂,主要先容了urllib库和requests库的区别。
在使用urllib内的request模块时,返回体获取有效信息和哀求体的拼接必要decode和encode后再进行装载。进行http哀求时需先构造get或者post哀求再进行调用,header等头文件也需先辈行构造。
requests是对urllib的进一步封装,因此在使用上显得更加的便捷,建议在现实应用傍边尽量使用requests。
进展能给一些对爬虫感兴趣,有一个具体的概念。方法只是一种工具,试着去爬一爬会更容易上手,收集也会有很多的坑,做爬虫更必要大量的经验来应付复杂的收集环境。
本文地址:http://www.wbwb.net/bianchengyuyan/216679.html 转载请注明出处!