[問題] json爬蟲條件自動帶入日期

作者: hiddenwind (我可以重來嗎)   2017-07-23 21:03:38
請教各位先進
我想抓取特定時間內的市場交易資料,使用語法如下:
因為查詢起點(startdate)為固定106.01.01
我想讓查詢終點(enddate)為每天。
目前只能用手動輸入。
import json
import requests
res = requests.get("http://m.coa.gov.tw/OpenData/FarmTransData.aspx?StartDate=106.01.01&EndDate=106.07.23")
print(res.text)
後來我將python今天日期轉換成他的格式yyy.mm.dd
import time
交易日期=time.time()
localtime = time.localtime(交易日期)
print("年: ", localtime[0])
print("月: ", localtime[1])
print("日: ", localtime[2])
print("時: ", localtime[3])
print("分: ", localtime[4])
print("秒: ", localtime[5])
formattime = time.asctime(time.localtime(交易日期))
print(formattime)
m = str(localtime[1])
mm = m.zfill(2)
d = str(localtime[2])
dd = d.zfill(2)
yyymmdd =print(str(localtime[0]-1911)+"."+str(mm)+"."+str(dd))
可以得到106.07.23
但我應該要如何做才能將yyymmdd帶入enddate呢?
感謝大家~
作者: zerof (貓橘毛發呆雕像)   2017-07-23 21:15:00
... url="...EndDate=%s" % end_date
作者: uranusjr (←這人是超級笨蛋)   2017-07-24 02:33:00
比較好的方法是用 get() 的 params 參數http://d.pr/80lnYS
作者: coeric ( )   2017-07-24 12:18:00
url="http://......./EndDate="+yyymmdd ?????res=requests.get(url)我覺得你該有的作法,都有了不是?
作者: hiddenwind (我可以重來嗎)   2017-07-24 19:46:00
謝謝協助,因為我想作的是依要求的搜尋格式作出今日的日期再帶入相對的條件(ENDDATE),這樣後續就能打開自動執行啊,後面被切掉了,原來的條件是http://m.coa.gov.tw/OpenData/FarmTransData.aspx?StartDate=106.01.01&EndDate=106.07.24問題是在enddate上謝謝U大,這樣寫比較易讀,可是一樣無法把yyymmdd帶入
作者: s860134 (s860134)   2017-07-25 06:48:00
從上述語意來看 coeric 說的就是你要的吧 ?你的問題出在 yyymmdd =print(...)這 print 本身不會回傳任何東西 yyymmdd 賦值為 None把 print 拿掉,剩下一切都會正常u 大說的方式可以讓你的帶入方式比較美觀好維護
作者: coeric ( )   2017-07-25 18:22:00
因為既然都有能力print出來 剩下就是帶進去而已 應該沒啥在這看文,也是一個精進自己的方法,u大說的方式我似乎三天兩頭就會看到,但卻沒去思考它的美觀與方便日後也該慢慢調整自己coding的模式了
作者: hiddenwind (我可以重來嗎)   2017-07-25 19:59:00
感謝樓上各位大大,成功了!還有很多要跟版上學習orz

Links booklink

Contact Us: admin [ a t ] ucptt.com