抓取目标:
我们的抓取目标是京东商城的App电子商品信息,并将信息保存到MongoDB数据库中。
抓取商品信息的id号、标题、单价、评价条数等信息
准备工作和抓取分析
准备工作:
安装app抓包工具Charles、mitmproxy。
配置网络,确认手机和PC处于同一局域网下,并配置好代理服务
安装证书,确保可以抓取HTTPS的请求信息。
安装并开启MongoDB数据库。
抓取分析:
打开iCharles抓包工具,让后使用手机打开京东App应用程序,让后搜索电脑商品信息。
在抓包工具中获取url地址:/?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 = '/?functionId=search'
if flow.request.(url):
text =
data = (text)
shops = ('wareInfo')
for shop in shops:
item = {
'spuId': ('spuId'),
'wname': ('wname'),
'price': ('jdPrice'),
'reviews': ('reviews')
}
(str(item))
#写入MongoDB数据库
#(data)