python爬蟲在解析不帶引號的json報錯的問題解決方案

本例中環境:python

python3.6.6程序員

demjson-2.2.4json

如不看廢話請直接看3(下面紅體字)spa

1.近期在爬取代理驗證代理的時候發生一個Bug,代理

就是在驗證代理的時候返回的是以下字符串,code

{ip:'121.79.50.68',address:'北京市 長城寬帶'}blog

剛開始十分開心這不是json字符串嗎,那就很方便了。ip

立刻就用python3自帶的json模塊進行了json.loads(str)處理。字符串

結果你們也知道了,直接報錯,連續來回折騰幾回,博客

發現這不是標準的json字符串,字符串的key沒有帶引號因此沒法解析。

後來着急須要,因此用了個正則匹配字符串的ip拿出來使用。雖然有些麻煩。這樣也是解決了當前需求。

2.可是做爲一個python的程序員,首要的精神就是懶(胡謅的)。因此不想使用正則這個很lo又有些麻煩的方法。

翻了半天的論壇,博客,找的瞭解決辦法。辦法以下

3.首先安裝demjson模塊;

pip3 install demjson

而後解析字符串就好。

import demjson
print
(demjson.decode("{ip:'121.79.50.68',address:'北京市 長城寬帶'}"))
相關文章
相關標籤/搜索