「」"
get傳參:
(1)漢字報錯:直譯器ascii沒有漢字。需要url漢字轉碼
urllib.parse.quote(url, safe = string.printable)
(2) 字典傳參:
urllib.parse.urlencode(dictionary)
「」"「」"
post傳參:
urllib.request.urlopen(url,data=「伺服器接收的資料」)
import urllib.request
import urllib.parse
import string
def load_data():
url = ""
# url的get請求
# response:https響應的物件
response = urllib.request.urlopen(url)
print(response)
# 讀取內容,將獲取的內容轉換成字串
data = response.read()
print(data)
str_data = data.decode("utf-8")
print(str_data)
# 將資料寫成檔案
# 將字串型別轉換成bytes
# python爬取的型別:str bytes
# 如果是str型別,則儲存為二進位制時,就需要encode("utf-8")
# 如果是bytes型別,需要儲存為str型別時,則需要解碼:decode("utf-8")
def get_method_params():
url = "s?wd="
# 拼接字串
# **內出現了漢字,會報錯
name = "美女"
final_url = url + name
print(final_url)
# 將包含漢字的**進行轉譯
encode_url = urllib.parse.quote(final_url, safe=string.printable)
# 使用**傳送網路請求
response = urllib.request.urlopen(encode_url)
print(response)
# unicodeencodeerror: 'ascii' codec can't encode characters in position 10-11: ordinal not in range(128)
# 報錯原因:python是解釋性語言,解析器只支撐ascii (0-127)
# 即:不支援中文
# 將此儲存在特定目錄
# 讀取返回的內容
data = response.read()
# 將返回的byte內容變成字串形式
str_data = data.decode("utf-8")
f.write(str_data)
get_method_params()
load_data()
SQL基礎學習day01
froeign key外來鍵 check約束 defualt預設值 truncate table 語句 其它運算子描述 等於 不等於。注釋 在 sql 的一些版本中,該操作符可被寫成 大於 小於 大於等於 小於等於 between 在某個範圍內 like 搜尋某種模式 in指定針對某個列的多個可能值...
c 基礎學習Day01
c 基礎學習day01 計算機系統 計算機系統由硬體 軟體組成 指令系統是硬體和軟體的介面。計算機語言和程式設計方法 計算機語言 程式設計師與計算機溝通的語言 描述解決問題的方法和相關資料。計算機語言的級別 二進位制 構成的機器語言 使用助記符的組合語言 使用類似英語單詞和語句的高階語言 c 是物件...
python之基礎學習day01
今天是python學習的第一天,收穫還是不少的,使用的編輯器為python3.7。第一天學習知識總結 1 編寫的第一句python語句 print hello world 2 python的兩種執行方式 python直譯器 py檔案路徑 python進入直譯器 實時輸入並獲取到執行結果 3 pyth...