本文將從以下幾個方面介紹如何使用Python訪問網站:網路請求、POST請求、用戶代理、Cookie、代理IP、API請求。
一、網路請求
Python有三種主流的網路請求庫:urllib、requests、http.client。
urllib:
import urllib.request
response = urllib.request.urlopen('http://www.baidu.com')
print(response.read().decode('utf-8'))
requests:
import requests
response = requests.get('http://www.baidu.com')
print(response.text)
http.client:
import http.client
conn = http.client.HTTPSConnection('www.baidu.com')
conn.request('GET', '/')
response = conn.getresponse()
print(response.read().decode('utf-8'))
二、POST請求
使用requests庫發送POST請求:
import requests
data = {'key1': 'value1', 'key2': 'value2'}
response = requests.post('http://www.example.com', data=data)
print(response.text)
三、用戶代理
使用requests庫偽裝用戶代理:
import requests
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get('http://www.baidu.com', headers=headers)
print(response.text)
四、Cookie
使用requests庫獲取並使用Cookie:
import requests
# 先發送一次請求獲取Cookie
response = requests.get('http://www.example.com')
cookies = response.cookies
# 再發送一次請求帶上Cookie
response = requests.get('http://www.example.com/other_page', cookies=cookies)
print(response.text)
五、代理IP
使用requests庫設置代理IP:
import requests
proxies = {'http': 'http://127.0.0.1:8888', 'https': 'http://127.0.0.1:8888'}
response = requests.get('http://www.example.com', proxies=proxies)
print(response.text)
六、API請求
使用requests庫進行API請求:
import requests
response = requests.get('http://api.example.com', params={'key1': 'value1', 'key2': 'value2'})
json_data = response.json()
print(json_data)
原創文章,作者:JSMYO,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/375078.html