mitmdump爬取得到APP數據信息,存入mongode數據庫

環境:win10,安卓9,配置好的mitmdump和相關證書

代碼

import json
import pymongo
from mitmproxy import ctx


def response(flow):
    # https://entree.igetget.com/ebook2/v1/ranklist/list?requestType=new_rank&count=20&max_id=0 # 新書排行鏈接
    url = 'https://entree-ws.igetget.com/ebook2/v1/ranklist/list?requestType=total_rank&count=20&max_id=0'  # 熱書排行

    # 對url的過濾,只有mitmdump捕捉到符合的url以後,纔會導出數據
    if flow.request.url.startswith(url):
        text = flow.response.text
        data = json.loads(text)
        books = data.get('c').get('data')
        for book in books:
            data = {
                'title': book.get('operating_title'),
                'cover': book.get('cover'),
                'summary': book.get('other_share_summary'),
                'introduce': book.get('book_intro'),
                'price': book.get('price')
            }
            save(data)
            ctx.log.info(str(data))
            ctx.log.info('------------------------------------------------------------------------------------------------------')


def save(data):
    client = pymongo.MongoClient(host='localhost')
    db = client.igetget
    collection = db.book
    if data:
        collection.insert(data)

成果
0
1

Ps:有什麼問題歡迎大家評論

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章