京東app商品信息爬取


抓取目標:

我們的抓取目標是京東商城的App電子商品信息,並將信息保存到MongoDB數據庫中。
抓取商品信息的id號、標題、單價、評價條數等信息

准備工作和抓取分析

准備工作:

  • 安裝app抓包工具Charles、mitmproxy。
  • 配置網絡,確認手機和PC處於同一局域網下,並配置好代理服務
  • 安裝證書,確保可以抓取HTTPS的請求信息。
  • 安裝並開啟MongoDB數據庫。

抓取分析:

打開iCharles抓包工具,讓后使用手機打開京東App應用程序,讓后搜索電腦商品信息。
在抓包工具中獲取url地址:http://api.m.jd.com/client.action?functionId=search
抓取信息格式為json格式。具體如下圖所示

代碼編寫:

import json
#import pymongo
from mitmproxy import ctx

#連接MongoDB數據庫jddb,選擇集合shop
#client = pymongo.MongoClient('localhost')
#db = client['jddb']
#collection = db['shop']

def response(flow):
    #global collection
    url = 'http://api.m.jd.com/client.action?functionId=search'
    if flow.request.url.startswith(url):
        text = flow.response.text
        data = json.loads(text)
        shops = data.get('wareInfo')
        for shop in shops:
            item = {
                'spuId': shop.get('spuId'),
                'wname': shop.get('wname'),
                'price': shop.get('jdPrice'),
                'reviews': shop.get('reviews')
            }
            ctx.log.info(str(item))
            #寫入MongoDB數據庫
            #collection.insert(data)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM