国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

基于Python爬取京東雙十一商品價格曲線

瀏覽:5日期:2022-07-07 13:14:12

一年一度的雙十一就快到了,各種砍價、蓋樓、挖現金的口令將在未來一個月內充斥朋友圈、微信群中。玩過多次雙十一活動的小編表示一頓操作猛如虎,一看結果2毛5。浪費時間不說而且未必得到真正的優惠,雙十一電商的“明降暗升”已經是默認的潛規則了。打破這種規則很簡單,可以用 Python 寫一個定時監控商品價格的小工具。

思路第一步抓取商品的價格存入 Python 自帶的 SQLite 數據庫每天定時抓取商品價格使用 pyecharts 模塊繪制價格折線圖,讓低價一目了然

抓取京東價格

從商品詳情的頁面中打開 F12 控制面板,找到包含 p.3 的鏈接,在旁邊的 preview 面板中可以看到當前商品價格

基于Python爬取京東雙十一商品價格曲線

defget_jd_price(skuId):

sku_detail_url = ’http://item.jd.com/{}.html’ sku_price_url = ’https://p.3.cn/prices/get?type=1&skuid=J_{}’ r = requests.get(sku_detail_url.format(skuId)).content soup = BeautifulSoup(r, ’html.parser’, from_encoding=’utf-8’) sku_name_div = soup.find(’div’, class_='sku-name') if not sku_name_div: print(’您輸入的商品ID有誤!’) return else: sku_name = sku_name_div.text.strip() r = requests.get(sku_price_url.format(skuId)) price = json.loads(r.text)[0][’p’] data = { ’sku_id’: skuId, ’sku_name’: sku_name, ’price’: price } return data

把抓取的價格存入 sqlite 數據庫,使用 PyCharm 的 Database 功能創建一個 sqlite 數據庫

基于Python爬取京東雙十一商品價格曲線

基于Python爬取京東雙十一商品價格曲線

最終將數據插入到數據庫

# 新增def insert(data): conn = sqlite3.connect(’price.db’) c = conn.cursor() sql = ’INSERT INTO price (sku_id,sku_name,price) VALUES ('{}', '{}', '{}')’.format(data.get('sku_id'), data.get('sku_name'), data.get(’price’) ) c.execute(sql) conn.commit() conn.close()# 查詢def select(sku_id): conn = sqlite3.connect(’price.db’) c = conn.cursor() sql = ’select sku_id, sku_name, price, time from price where sku_id = '{}' order by time asc’.format(sku_id) cursor = c.execute(sql) datas = [] for row in cursor: data = { ’sku_id’: row[0], ’sku_name’: row[1], ’price’: row[2], ’time’: row[3] } datas.append(data) conn.close() return datas

示例結果

基于Python爬取京東雙十一商品價格曲線

計劃任務

使用輕量級的 schedule 模塊每天早上 10 點抓取京東價格這一步驟

安裝 schedule 模塊

pip install scheduledef run_price_job(skuId): # 使用不占主線程的方式啟動 計劃任務 def run_continuously(interval=1): cease_continuous_run = threading.Event() class ScheduleThread(threading.Thread): @classmethod def run(cls):while not cease_continuous_run.is_set(): schedule.run_pending() time.sleep(interval) continuous_thread = ScheduleThread() continuous_thread.start() return cease_continuous_run # 每天10點運行,get_jd_price:任務方法,skuId:任務方法的參數 schedule.every().day.at('10:00').do(get_jd_price, skuId=skuId) run_continuously()

查看歷史價格

使用 pytharts 模塊繪制折線圖,直觀的查看每一天的價格差異

datas = select(skuId)def line(datas): x_data = [] y_data = [] for data in datas: x_data.append(data.get(’time’)) y_data.append(data.get(’price’)) ( Line() .add_xaxis(x_data) .add_yaxis(datas[0].get(’sku_name’), y_data, is_connect_nones=True) .render('商品歷史價格.html') )

基于Python爬取京東雙十一商品價格曲線

總結

本文抓取了京東商城的價格,小伙伴們也可以修個腳本抓取淘寶的價格。使用 Python 解決生活中的小小痛點,讓錢包不再干癟。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: 京東 Python
相關文章:
主站蜘蛛池模板: 午夜成年女人毛片免费观看 | 欧美极品video粗暴 | 国产手机在线国内精品 | 久久国产精品岛国搬运工 | 国产精品久久久久久一区二区三区 | 亚洲午夜网 | 国产成人无精品久久久 | 三级毛片大全 | 久久99亚洲精品久久久久网站 | 中国国语毛片免费观看视频 | 成人男女网18免费91 | 欧美日韩视频在线第一区二区三区 | 欧美激情第一欧美在线 | 草草影院ccyy | 欧美日韩一区二区三区久久 | 一区二区三区视频 | 欧美日韩高清不卡免费观看 | 亚洲美女性视频 | 亚洲精品国产字幕久久不卡 | 性欧美久久| 美女张开腿让我 | 国产精品三级国语在线看 | 中文字幕亚洲综合久久 | 亚洲高清二区 | 色播基地 | 免费观看呢日本天堂视频 | 久草.com| 亚洲一区视频 | 精品国产美女福到在线不卡f | 在线成人97观看 | 91在线一区二区三区 | 老色99久久九九精品尤物 | 久久福利资源网站免费看 | 中文字幕亚洲不卡在线亚瑟 | 久久91亚洲精品中文字幕奶水 | 国产三级日产三级韩国三级 | 91精品久久久久亚洲国产 | 最新国产精品好看的国产精品 | 国产亚洲综合成人91精品 | 日本成人不卡视频 | 黄色一及毛片 |