urllib|urllib 模块的基本使用
urllib 库的基本使用
(1). request : 是http请求模块, 可以用来模拟发送请求,就像在浏览器中输入网址,然后敲击回车键一样
(2). error : 异常处理模块,如出现错误,可以使用error模块来捕捉异常,然后进行重试或者其他操作,保证程序不会意外终止.
(3). parse : 这是一个工具模块,提供了许多url的处理方法,比如拆分,解析,合并等等.
url:设置目标url
data:如果设置该参数,则请求默认为post请求
timeout:用于设置超时时间,单位为秒
context:必须是一个ssl.SSLContext类型,用来指定SSL设置,忽略未认证的CA证书.
urlopen方法的使用
request.urlopen(url,req_headers)
Request:
req = request.Request()
response = request.urloopen(req)
data(默认空):是伴随 url 提交的数据(比如要post的数据),同时 HTTP 请求将从 "GET"方式 改为 "POST"方式。
headers(默认空):是一个字典,包含了需要发送的HTTP报头的键值对。
添加一个 User-Agent
req_header = {"User-Agent" : "Mozilla/5.0 (X11;
Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36",}
添加更多的Header信息
在 HTTP Request 中加入特定的 Header,来构造一个完整的HTTP请求消息。
1. 可以通过调用Request.add_header() 添加/修改一个特定的header
2. 也可以通过调用Request.get_header()来查看已有的header。
【urllib|urllib 模块的基本使用】urlencode( ) 方法
通过urllib.urlencode()方法,将字典键值对按URL编码转换,从而能被web服务器接受。
result = urllib.parse.urlencode(word)
print(result)
通过urllib.unquote()方法,把 URL编码字符串,转换回原先字符串。
result = urllib.parse.unquote(result)
print(result)
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量