小弟用Python做個爬蟲程式
因為是公司內網所以忽略網址
import requests
my_data = data
r = requests.post('http://xxx/xxx/xxx', data = my_data)
print(r.text)
我post之後印出的值格式像下方這樣子
[{"APPLY_DATE":"2018/05/09","APPLY_TYPE":"異動","DOC_NO":"20180509"},
{"APPLY_DATE":"2018/03/23","APPLY_TYPE":"送簽","DOC_NO":"4501241013"},
{"APPLY_DATE":"2018/03/22","APPLY_TYPE":"送簽","DOC_NO":"4501239898"}]
請問我可以怎麼處理成比較乾淨易讀的格式(類似下方這樣)
APPLY_DATE:2018/05/09
APPLY_TYPE:異動
DOC_NO:20180509
還是有辦法直接export Excel ?
標頭是APPLY_DATE / APPLY_TYPE / DOC_NO
再請各位邦友解惑
謝謝
使用for迴圈印出來就行了
data = [{"APPLY_DATE":"2018/05/09","APPLY_TYPE":"異動","DOC_NO":"20180509"},
{"APPLY_DATE":"2018/03/23","APPLY_TYPE":"送簽","DOC_NO":"4501241013"},
{"APPLY_DATE":"2018/03/22","APPLY_TYPE":"送簽","DOC_NO":"4501239898"}]
for dataList in data:
print('APPLY_DATE:' + dataList['APPLY_DATE'] + '\n' + 'APPLY_TYPE:' + dataList['APPLY_TYPE'] + '\n'+'DOC_NO:' + dataList['DOC_NO'])
上面的data是你的r.text
python的不是JSON啦,雖然很像但有差異。
有沒有import json
有差嗎?
froce是唷,感謝指正
pcw我後來試了一下,要json字串才需要,如果直接是list就不需要了
homura我是看你import json
但又沒用,所以好奇問一下。
有沒有import JSON沒差,python接回來的會是本身的list和dict。
並非JSON。
接JSON字串的話,還會需要JSON.loads去把JSON字串解析成list和dict。
froce感謝解說
我昨天Google了一下 相關訊息
上述的r回傳的是不是json格式???
我試了下方做法就OK了!
import xlwt,xlrd
book = xlwt.Workbook()
sheet = book.add_sheet('sht')
for row in range(len(r.json())):
APPLY_DATE = r.json()[row]['APPLY_DATE']
APPLY_TYPE = r.json()[row]['APPLY_TYPE']
DOC_NO = r.json()[row]['DOC_NO']
sheet.write(row,0,APPLY_DATE)
sheet.write(row,1,APPLY_TYPE)
sheet.write(row,2,DOC_NO)
book.save('Test123.xls')
原來還能這樣寫啊
https://www.jianshu.com/p/ee25e2b94eb8
在python中,dict和list的組合大致上和JSON相同,但是還是有差異。
python也沒有直接操作JSON的能力。
不過你可以透過json模組來轉換。
然後考慮下面兩段看似等值的程式碼。
python:
key = "1"
dic = {key:"111"}
print(dic)
js:
var key = "1";
var dic = {key:"111"};
console.log(dic);
python的結果會是:{"1":"111"}
javascript的結果會是:{key:"111"}
要印出來的話,你可以用
1.csv模組
2.xlwings模組等可以讀寫excel的模組
只是要看的話,用pprint就好了。