Python抓取淘寶IP地址資料
def fetch(ip): url = ' result = [] try: response = urllib.urlopen(url).read() jsondata = json.loads(response) if jsondata[u'code'] == 0: result.append(jsondata[u'data'][u'ip'].encode('utf-8')) result.append(jsondata[u'data'][u'country'].encode('utf-8')) result.append(jsondata[u'data'][u'country_id'].encode('utf-8')) result.append(jsondata[u'data'][u'area'].encode('utf-8')) result.append(jsondata[u'data'][u'area_id'].encode('utf-8')) result.append(jsondata[u'data'][u'region'].encode('utf-8')) result.append(jsondata[u'data'][u'region_id'].encode('utf-8')) result.append(jsondata[u'data'][u'city'].encode('utf-8')) result.append(jsondata[u'data'][u'city_id'].encode('utf-8')) result.append(jsondata[u'data'][u'county'].encode('utf-8')) result.append(jsondata[u'data'][u'county_id'].encode('utf-8')) result.append(jsondata[u'data'][u'isp'].encode('utf-8')) result.append(jsondata[u'data'][u'isp_id'].encode('utf-8')) else: return 0, result except: logging.exception("Url open failed:" + url) return 0, result return 1, result def worker(ratelimit, jobs, results, progress): global cancel while not cancel: try: ratelimit.ratecontrol() ip = jobs.get(timeout=2) # Wait 2 seconds ok, result = fetch(ip) if not ok: logging.error("Fetch information failed, ip:{}".format(ip)) progress.put("") # Notify the progress even it failed elif result is not None: results.put(" ".join(result)) jobs.task_done() # Notify one item except Queue.Empty: pass except: logging.exception("Unknown Error!")
def process(target, results, progress): global cancel while not cancel: try: line = results.get(timeout=5) except Queue.Empty: pass else: print >>target, line progress.put("") results.task_done()
def progproc(progressbar, count, progress): """ Since ProgressBar is not a thread-safe class, we use a Queue to do the counting job, like two other threads. Use this thread do the printing of progress bar. By the way, it will print to stderr, which does not conflict with the default result output(stdout). """ idx = 1 while True: try: progress.get(timeout=5) except Queue.Empty: pass else: progressbar.update(idx) idx += 1
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69903461/viewspace-2642675/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Javascript抓取京東、淘寶商品資料JavaScript
- Python爬蟲,抓取淘寶商品評論內容!Python爬蟲
- 淘寶商品銷量資料介面,淘寶商品月銷量,淘寶商品總銷量資料介面
- golang實現抓取IP地址的蜘蛛程式Golang
- IP地址在網頁抓取中的作用網頁
- IP地址在網頁抓取中有何作用網頁
- Python爬蟲抓取資料,為什麼要使用代理IP?Python爬蟲
- 淘寶商品詳情資料API介面php java pythonAPIPHPJavaPython
- 使用Python呼叫API介面獲取淘寶商品資料PythonAPI
- Java“牽手”淘寶商品列表頁資料採集+淘寶商品價格資料排序,淘寶API介面申請指南Java排序API
- 淘寶API系列:如何採集淘寶商品詳情頁資料?API
- 淘寶:懶人消費資料
- python簡書資料抓取Python
- 淘寶拼多多京東上貨必備API 商品詳情頁資料抓取 APP商品詳情原資料APIAPP
- 如何使用代理IP進行資料抓取,PHP爬蟲抓取亞馬遜商品資料PHP爬蟲亞馬遜
- 淘榜單&淘寶直播:2020淘寶直播雙11商家直播資料包告(附下載)
- 仿淘寶,京東多級地址選擇器
- 利用python編寫爬蟲爬取淘寶奶粉部分資料.1Python爬蟲
- python採集淘寶天貓商品列表資料介面程式碼展示Python
- 淘寶API分享:獲取淘寶商品SKU資訊API
- 用Python爬蟲抓取代理IPPython爬蟲
- [Python3]selenium爬取淘寶商品資訊Python
- 使用代理IP抓取資料需要注意什麼?
- 淘寶關鍵詞搜尋介面,淘寶商品列表介面,淘寶商品銷量排序介面資料採集程式碼展示排序
- 批量抓取整店寶貝,支援天貓、淘寶等多個電商平臺
- 採集淘寶商品詳情頁資料
- 淘寶API分享:關鍵字搜尋淘寶商品,獲取商品ID,詳情資料API
- Python爬蟲爬取淘寶,京東商品資訊Python爬蟲
- Python向IP地址傳送字串Python字串
- 使用代理IP抓取資料的四大優勢
- 用代理IP抓取大資料有什麼好處?大資料
- python利用selenium+phantomJS爬淘寶PythonJS
- 如何使用API介面獲取淘寶商品資料API
- 淘寶海量資料庫OceanBase系統架構資料庫架構
- 淘寶/天貓獲得淘寶商品詳情 API 如何實現實時資料獲取?API
- 淘寶/天貓獲得淘寶app商品詳情原資料 API 返回值說明APPAPI
- 淘寶API分享:淘寶/天貓批次獲取商品重量資訊API
- 淘寶API:淘寶/天貓獲得淘寶商品快遞費用API