知識點
如果有乙個多層巢狀的複雜字典,想要根據key和下標來批量提取value,這是比較困難的。jsonpath模組就能解決這個痛點,接下來我們就來學習jsonpath模組jsonpath可以按照key對python字典進行批量資料提取知識點:了解 jsonpath模組的使用場景
jsonpath是第三方模組,需要額外安裝
pip install jsonpath
from jsonpath import jsonpath
ret = jsonpath(a, 'jsonpath語法規則字串')
2.4 jsonpath使用示例
book_dict = ,,,
],"bicycle":
}}from jsonpath import jsonpath
print(jsonpath(book_dict, '$..author')) # 如果取不到將返回false # 返回列表,如果取不到將返回false
我們以拉勾網城市json檔案 為例,獲取所有城市的名字的列表,並寫入檔案。
import requests
import jsonpath
import json
# 獲取拉勾網城市json字串
url =
''headers =
response =requests.get(url, headers=headers)
html_str = response.content.decode(
)# 把json格式字串轉換成python物件
jsonobj = json.loads(html_str)
# 從根節點開始,獲取所有key為name的值
citylist = jsonpath.jsonpath(jsonobj,
'$..name'
)# 寫入檔案
with
open
('city_name.txt'
,'w'
)as f:
content = json.dumps(citylist, ensure_ascii=
false
) f.write(content)
知識點:掌握 jsonpath模組的使 python之路之python爬蟲
一.將鏈結url原始碼讀出,將其作為列表輸出 二.使用正規表示式將原始碼中有關的原始碼篩選出來,jpg檔案 三.在輸出的過程中按照自己的方式命名 這裡邊唯一的難點恐怕是正規表示式的書寫,下面我們初步系統的講解一下正規表示式 前面有一講專門介紹了正規表示式 具體可以檢視鏈結,這裡只進行一些重要的補充。...
Python爬蟲學習之路(1) 前端
最近一直想找一種督促自己學習的方法,感覺似乎寫部落格是乙個不錯的選擇。所以這些部落格的主要目的當然是讓自己靜下心來鞏固複習,當然如果能對別人有所幫助,那就再好不過了。我是在win10 pycharm上編寫python的,至於一些庫,使用的時候再匯入吧。學習爬蟲之前一定要對前端知識有所了解,當然要求不...
Python學習之路 爬蟲篇 2
為什麼要學習requests,而不是urllib 1 requests的底層實現就是urllib 2 requests在python2和python3通 法完全 樣 3 requests簡單易 4 requests能夠 動幫助我們解壓 gzip壓縮的 內容 作 傳送 絡請求,返回相應資料 中 檔ap...