Python3 X 抓取網路資源

2021-07-04 18:39:54 字數 2259 閱讀 7407

python 3.x 要使用urllib.request 來抓取網路資源。

最簡單的方式:

#coding=utf-8

import urllib.request

response = urllib.request.urlopen('')

buff = response.read()

#顯示html = buff.decode("utf8")

response.close()

print(html)

使用request的方式:

#coding=utf-8

import urllib.request

req = urllib.request.request('')

response = urllib.request.urlopen(req)

buff = response.read()

#顯示the_page = buff.decode("utf8")

response.close()

print(the_page)

這種方式同樣可以用來處理其他url,例如ftp:

#coding=utf-8

import urllib.request

req = urllib.request.request('')

response = urllib.request.urlopen(req)

buff = response.read()

#顯示the_page = buff.decode("utf8")

response.close()

print(the_page)

使用post請求:

import urllib.parseimport

urllib.requesturl = ''

values =

data = urllib.parse.urlencode(values)

req = urllib.request.request(url, data)

response = urllib.request.urlopen(req)

the_page = response.read()

使用get請求:

import urllib.request

import urllib.parse

data = {}

data['name'] = 'somebody

here'

data['location'] = 'northampton'

data['language'] = 'python'

url_values = urllib.parse.urlencode(data)

print(url_values)

name=somebody+here&language=python&location=northampton

url = ''

full_url = url + '?' + url_values

data = urllib.request.open(full_url)

新增header:

import urllib.parse

import urllib.request

url =

''user_agent =

'mozilla/4.0 (compatible; msie 5.5; windows nt)'

values =

headers =

data

= urllib.parse.urlencode(values)

req = urllib.request.request(url, data, headers)

response = urllib.request.urlopen(req)

the_page = response.read()

錯誤處理:

req = urllib.request.request('')

try: urllib.request.urlopen(req)

except urllib.error.urlerror as e:

print(e.reason)

返回的錯誤**:

# form .

responses =

Python 訪問網路資源

使用python寫介面自動化指令碼的時候,會使用到一系列請求來訪問網路資源 from urllib import request defget html url page request.urlopen url html page.read decode utf 8 如果不用decode,獲取的會是...

Python3 x編碼問題

1.記事本的ansi編碼為系統本地編碼,我的是gbk open 函式的encoding引數預設是本地編碼,也就是gbk,所以直接讀取ansi編碼的記事本檔案是木有問題的。怎麼檢視系統本地編碼?在cmd下輸入 chcp 從下表可以看出,936對應gbk編碼 下表列出了所有支援的 頁及其國家 地區 或者...

Python 內建函式(Python 3 x)

1 type obj 返回變數型別 2 isinstance object,class or type or tuple 測試物件是否為指定型別的例項 4 range start,end step 返回乙個 start,end 內的 range 物件,start 預設為 0,step 預設為 1 5...