Python下使用requests抓取网页GET POST

Python下可以方便的使用requests抓取网页,执行GET、POST等请求。

首先安装requests

pip3 install requests

GET示例

import requests

url = "https://www.baidu.com"

rs = requests.get(url)

print(rs.text)

GET传递参数

GET传递参数可以直接拼接在url中,也可以使用如下方式。

payload = {'key1': 'value1', 'key2': 'value2'}
rs = requests.get(url, params=payload)

POST示例

rs = requests.post(url, data={'key':'value'})

使用headers

headers = {
        'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36'
    }
page = requests.get(url, headers=headers)

使用代理

proxies = {
        "http": "http://127.0.0.1:1087",
        "https": "http://127.0.0.1:1087",
    }

result = requests.get(url, proxies=proxies)

print(result.text)

如果代理使用了 Http Basic Auth认证,可以这么配置代理 http://username:password@host:port

返回内容、页面编码和状态码

rs.text # 内容
rs.encoding # 编码
rs.status_code # 状态码

Leave a Comment

豫ICP备19001387号-1