如何爬取京东手机上万的商品数据,这个神器可以帮你

Charles是一个网络抓包工具,我们可以用它来做App的抓包分析,得到App运行过程中发生的所有网络请求和响应内容,这就和Web端浏览器的开发者工具Network部分看到的结果一致。

相比Fiddler来说,Charles的功能更强大,而且跨平台支持更好。所以我们选用Charles作为主要的移动端抓包工具,用于分析移动App的数据包,辅助完成App数据抓取工作。

一、本节目标

本节我们以京东App为例,通过Charles抓取App运行过程中的网络数据包,然后查看具体的Request和Response内容,以此来了解Charles的用法。

二、准备工作

请确保已经正确安装Charles并开启了代理服务,手机和Charles处于同一个局域网下,Charles代理和CharlesCA证书设置好。

三、原理

首先Charles运行在自己的PC上,Charles运行的时候会在PC的8888端口开启一个代理服务,这个服务实际上是一个HTTP/HTTPS的代理。

确保手机和PC在同一个局域网内,我们可以使用手机模拟器通过虚拟网络连接,也可以使用手机真机和PC通过无线网络连接。

设置手机代理为Charles的代理地址,这样手机访问互联网的数据包就会流经Charles,Charles再转发这些数据包到真实的服务器,服务器返回的数据包再由Charles转发回手机,Charles就起到中间人的作用,所有流量包都可以捕捉到,因此所有HTTP请求和响应都可以捕获到。同时Charles还有权力对请求和响应进行修改。

四、抓包

初始状态下Charles的运行界面如下图所示。

Charles会一直监听PC和手机发生的网络数据包,捕获到的数据包就会显示在左侧,随着时间的推移,捕获的数据包越来越多,左侧列表的内容也会越来越多。

可以看到,图中左侧显示了Charles抓取到的请求站点,我们点击任意一个条目便可以查看对应请求的详细信息,其中包括Request、Response等内容。

接下来清空Charles的抓取结果,点击左侧的扫帚按钮即可清空当前捕获到的所有请求。然后点击第二个监听按钮,确保监听按钮是打开的,这表示Charles正在监听App的网络数据流,如下图所示。

这时打开手机京东,注意一定要提前设置好Charles的代理并配置好CA证书,否则没有效果。

打开任意一个商品,如iPhone,然后打开它的商品评论页面,如下图示。

不断上拉加载评论,可以看到Charles捕获到这个过程中京东App内发生的所有网络请求,如下图所示。

左侧列表中会出现一个api.m.jd.com链接,而且它在不停闪动,很可能就是当前App发出的获取评论数据的请求被Charles捕获到了。我们点击将其展开,继续上拉刷新评论。随着上拉的进行,此处又会出现一个个网络请求记录,这时新出现的数据包请求确定就是获取评论的请求。

为了验证其正确性,我们点击查看其中一个条目的详情信息。切换到Contents选项卡,这时我们发现一些JSON数据,核对一下结果,结果有commentData字段,其内容和我们在App中看到的评论内容一致,如下图所示。

这时可以确定,此请求对应的接口就是获取商品评论的接口。这样我们就成功捕获到了在上拉刷新的过程中发生的请求和响应内容。

五、分析

现在分析一下这个请求和响应的详细信息。首先可以回到Overview选项卡,上方显示了请求的接口URL,接着是响应状态Status Code、请求方式Method等,如下图所示。

这个结果和原本在Web端用浏览器开发者工具内捕获到的结果形式是类似的。

接下来点击Contents选项卡,查看该请求和响应的详情信息。

上半部分显示的是Request的信息,下半部分显示的是Response的信息。比如针对Reqeust,我们切换到Headers选项卡即可看到该Request的Headers信息,针对Response,我们切换到JSON TEXT选项卡即可看到该Response的Body信息,并且该内容已经被格式化,如下图所示。

由于这个请求是POST请求,我们还需要关心POST的表单信息,切换到Form选项卡即可查看,如下图所示。

这样我们就成功抓取App中的评论接口的请求和响应,并且可以查看Response返回的JSON数据。

至于其他App,我们同样可以使用这样的方式来分析。如果我们可以直接分析得到请求的URL和参数的规律,直接用程序模拟即可批量抓取。

六、重发

Charles还有一个强大功能,它可以将捕获到的请求加以修改并发送修改后的请求。点击上方的修改按钮,左侧列表就多了一个以编辑图标为开头的链接,这就代表此链接对应的请求正在被我们修改,如下图所示。

我们可以将Form中的某个字段移除,比如这里将partner字段移除,然后点击Remove。这时我们已经对原来请求携带的Form Data做了修改,然后点击下方的Execute按钮即可执行修改后的请求,如下图所示。

可以发现左侧列表再次出现了接口的请求结果,内容仍然不变,如下图所示。

删除Form表单中的partner字段并没有带来什么影响,所以这个字段是无关紧要的。

有了这个功能,我们就可以方便地使用Charles来做调试,可以通过修改参数、接口等来测试不同请求的响应状态,就可以知道哪些参数是必要的哪些是不必要的,以及参数分别有什么规律,最后得到一个最简单的接口和参数形式以供程序模拟调用使用。

七、结语

以上内容便是通过Charles抓包分析App请求的过程。通过Charles,我们成功抓取App中流经的网络数据包,捕获原始的数据,还可以修改原始请求和重新发起修改后的请求进行接口测试。

知道了请求和响应的具体信息,如果我们可以分析得到请求的URL和参数的规律,直接用程序模拟即可批量抓取!

手机爬虫非常有意思,而且可以爬取的数据非常多,当然还有很多东西要学。以后我也会写一些实战的有趣案例给大家。

八爪鱼采集器是一款功能强大的网页数据采集器,可以帮助您快速、高效地采集京东手机上万的商品数据。以下是一般的采集步骤:1. 打开八爪鱼采集器,并创建一个新的采集任务。2. 在任务设置中,输入京东手机的网址(www.jd.com)作为采集的起始网址。3. 配置采集规则。可以使用智能识别功能,让八爪鱼自动识别京东手机页面的数据结构,或者手动设置采集规则。4. 如果手动设置采集规则,可以通过鼠标选择页面上的数据元素,如商品名称、价格、评论数等,并设置相应的采集规则,以确保正确获取所需的数据。5. 设置翻页规则。由于京东手机的商品可能分页显示,需要设置八爪鱼采集器自动翻页,以获取更多的数据。6. 运行采集任务。确认设置无误后,可以启动采集任务,让八爪鱼开始采集京东手机上的商品数据。7. 等待采集完成。八爪鱼将根据设置的规则自动抓取页面上的数据,并将其保存到本地或导出到指定的数据库等。八爪鱼采集器支持将采集结果导出为Excel、CSV、HTML等格式,方便您进行数据分析和处理。同时,八爪鱼采集器还提供数据定制服务,可以根据您的需求进行评估和定制。如有需要,请联系我们的人工客服以获取更多信息。八爪鱼电商采集覆盖全球主流电商平台数据,涵盖90%以上数据类型及字段,帮助用户进行价格监控、电商选品、竞品分析、消费者洞察等,请前往官网了解更多详情。

  • 濡備綍鐖彇浜笢鎵嬫満涓婁竾鐨勫晢鍝佹暟鎹,杩欎釜绁炲櫒鍙互甯綘
    绛旓細鍦ㄦ墜鏈轰笂鎵撳紑浜笢App锛屽苟娴忚鍟嗗搧椤甸潰锛岀壒鍒槸鍟嗗搧璇勮閮ㄥ垎銆傚湪Charles涓紝鎮ㄥ皢鐪嬪埌涓庡晢鍝佽瘎璁虹浉鍏崇殑缃戠粶璇锋眰琚崟鑾枫傜偣鍑昏繖浜涜姹傦紝鎮ㄥ彲浠ユ煡鐪嬪叾璇︾粏鍐呭锛屽寘鎷琀eaders銆丗orm Data浠ュ強Response鐨凚ody绛変俊鎭傞氳繃鍒嗘瀽杩欎簺鏁版嵁锛屾偍鍙互纭畾鍝簺鏄姹傚晢鍝佽瘎璁虹殑鎺ュ彛锛屽苟楠岃瘉鎹曡幏鐨勬暟鎹寘鐨勬纭с傚鏋滆兘澶熷垎鏋愬嚭...
  • 濡備綍鐖彇浜笢鎵嬫満涓婁竾鐨勫晢鍝佹暟鎹,杩欎釜绁炲櫒鍙互甯綘
    绛旓細2. 鍦ㄤ换鍔¤缃腑锛岃緭鍏ヤ含涓滄墜鏈虹殑缃戝潃锛坵ww.jd.com锛変綔涓洪噰闆嗙殑璧峰缃戝潃銆3. 閰嶇疆閲囬泦瑙勫垯銆傚彲浠ヤ娇鐢ㄦ櫤鑳借瘑鍒姛鑳斤紝璁╁叓鐖奔鑷姩璇嗗埆浜笢鎵嬫満椤甸潰鐨勬暟鎹粨鏋勶紝鎴栬呮墜鍔ㄨ缃噰闆嗚鍒欍4. 濡傛灉鎵嬪姩璁剧疆閲囬泦瑙勫垯锛屽彲浠ラ氳繃榧犳爣閫夋嫨椤甸潰涓婄殑鏁版嵁鍏冪礌锛屽鍟嗗搧鍚嶇О銆佷环鏍笺佽瘎璁烘暟绛夛紝骞惰缃浉搴旂殑閲囬泦瑙勫垯锛屼互纭繚...
  • 鎬庝箞鐖彇5w鏉鍟嗗搧淇℃伅
    绛旓細鐖彇5w鏉″晢鍝佷俊鎭殑鏂规硶锛1銆佸湪浜笢棣栭〉鎼滅储鏍忚緭鍏ュ叧閿瘝锛屼互鐢佃剳涓轰緥銆2銆佺埇鍙栨悳绱㈤〉闈5w鍟嗗搧淇℃伅锛屽叾涓寘鎷晢鍝佸悕绉帮紝鍟嗗搧浠锋牸锛屽簵閾洪摼鎺ワ紝鍟嗗搧鏍蜂緥鍥撅紝鍟嗗搧浠锋牸锛屽晢鍝佹弿杩帮紝搴楅摵鍚嶇О锛屽晢鍝佸綋鍓嶆椿鍔(濡傚厤閭紝绉掓潃)銆3銆佸湪鐖彇鎼滅储椤甸潰鐨勫晢鍝佷俊鎭椂锛岃幏寰楀簵閾篿d锛岄氳繃搴楅摵id璺宠浆鍒板晢鍝佽缁嗕俊鎭〉闈紝鐖彇...
  • 濡備綍鐢⊿pyder鐖含涓闉嬪瓙鏁版嵁
    绛旓細鏍规嵁缃戜笂鍏紑璁块棶鍙鏁版嵁璧勬枡鐢⊿pyder鐖含涓滈瀷瀛愭暟鎹銆傚ぇ鐨勫師鍒欎笂锛屽湪缃戜笂鑳藉叕寮璁块棶鐨勫彲瑙佺殑鏁版嵁璧勬枡閮芥槸鏈夊姙娉曠埇鍙栧埌鐨勶紝浜笢涓婃槸鏈夐儴鍒嗙殑璁㈠崟鎴愪氦鏁版嵁鐨勶紝鎵浠ヨ繖浜涗篃鏄彲浠ョ埇鍙栫殑銆傛煇瀹濅腑鐨勬姹熸暟鎹紝鏁版嵁閲囬泦宸ヤ綔鍙互浠e啓鐖櫕锛屼篃鍙互鐩存帴璁╀粬浠埇鍙栨暟鎹
  • 鐖櫕灏忕櫧姹傞棶python濡備綍鐖彇澶╃尗浜笢绛夌綉椤
    绛旓細2. 鍦ㄤ换鍔¤缃腑锛岃緭鍏ュぉ鐚垨浜笢绛夌數鍟嗙綉绔欑殑缃戝潃浣滀负閲囬泦鐨勮捣濮嬬綉鍧銆3. 閰嶇疆閲囬泦瑙勫垯銆傚彲浠ヤ娇鐢ㄦ櫤鑳借瘑鍒姛鑳斤紝璁╁叓鐖奔鑷姩璇嗗埆缃戦〉鐨勬暟鎹粨鏋勶紝鎴栬呮墜鍔ㄨ缃噰闆嗚鍒欍4. 濡傛灉鎵嬪姩璁剧疆閲囬泦瑙勫垯锛屽彲浠ラ氳繃榧犳爣閫夋嫨椤甸潰涓婄殑鏁版嵁鍏冪礌锛屽鍟嗗搧鍚嶇О銆佷环鏍笺佽瘎璁烘暟绛夛紝骞惰缃浉搴旂殑閲囬泦瑙勫垯锛屼互纭繚姝g‘鑾峰彇鎵闇...
  • 浜笢涓娆℃渶澶氬彲浠ユ姄鍙栧灏鏁版嵁
    绛旓細124440涓傛牴鎹浜笢瀹樼綉鏌ヨ鏄剧ず锛屼含涓滀竴娆℃渶澶氬彲浠ユ姄鍙124440涓鏁版嵁锛屽钩鍧囨瘡涓〉闈㈤渶瑕100姣锛屽崟绾跨▼闇瑕31灏忔椂锛鐖彇闂撮殧鏃堕棿杩橀渶瑕佽绠椼
  • 浜笢鎵嬫満鐖彇浠烽挶鐨勬鏌鎬庝箞鐪
    绛旓細鏂规硶濡備笅锛1銆佹墦寮寰俊锛屽湪寰俊涓繘鍏ュ埌鎼滅储鐣岄潰銆2銆佸湪鐣岄潰鐨勬悳绱㈡涓緭鍏モ濆巻鍙蹭环鏍兼煡璇⑩滐紝骞剁偣鍑昏繘鍏ャ3銆佸湪鍘嗗彶浠锋牸鏌ヨ鐨勮緭鍏ユ涓緭鍏ヨ鏌ヨ鐨勫晢鍝杩炴帴銆4銆佹墦寮鍚庡嵆鍙煡鐪嬪晢鍝佺殑鍘嗗彶浠锋牸銆
  • python鎵归噺鐖彇浜笢鎵嬫満璇勮淇℃伅鍙婃槦绾
    绛旓細涓嬮潰浠ヤ竴娆鎵嬫満涓轰緥锛岃缁嗕粙缁峱ython鎵归噺鐖彇浜笢璇勮銆傛壘鍒拌瘎璁哄尯鍩 鎸塅12杩涘叆娴忚鍣ㄧ殑璋冭瘯绐楁埛锛堟垜鐢ㄧ殑鏄胺姝屾祻瑙堝櫒锛夌偣鍑籲etwork锛岄夋嫨all锛屾帴涓嬫潵鐐瑰嚮璇勮绗簩椤碉紝閫夋嫨js锛屽彲浠ユ壘鍒板姞杞借瘎璁虹殑閾炬帴锛堟甯稿簲璇ラ夋嫨all锛屼竴鐐圭偣鎵撅紝鎴戜箣鍓嶅凡缁忔壘鍒拌繃閾炬帴锛岀洿鎺ュ湪js澶勬壘浜嗭級锛岃瘎璁虹殑閾炬帴閫氬父鍚湁comment鍗曡瘝锛...
  • 浜笢鍟嗘櫤鍚庡彴鍙互鐪嬪埌鏁版嵁,浣嗘槸鐢╬ython鐖彇鎻愮ず娌℃潈闄,闇瑕鎬庝箞澶勭悊...
    绛旓細杩欏氨寮曞嚭浜嗕竴涓棶棰橈細濡備綍鍦ㄥ悎娉曡寖鍥村唴鍒╃敤鎶鏈墜娈佃幏鍙浜笢鍟嗘櫤鐨勬暟鎹鍛紵棣栧厛锛屾槑纭竴鐐癸紝鐖彇浠栦汉鐨勫悗鍙版暟鎹苟闈炲崟绾殑榛戝琛屼负锛屽彧鏈夊湪鏄庣‘鐨勫叕寮鏁版嵁婧愭垨鑰呭緱鍒版槑纭巿鏉冪殑鎯呭喌涓嬶紝鎵嶈兘杩涜鍚堟硶閲囬泦銆鐖櫕閫氬父鐢ㄤ簬鎶撳彇鍏紑鐨勭綉椤靛唴瀹癸紝鑰岄潪绉佹湁绯荤粺銆傚鏋滆瘯鍥鹃潪娉曞叆渚垫垨鑾峰彇鏈粡鎺堟潈鐨勬暟鎹紝涓嶄粎鍙兘渚电姱浠栦汉...
  • 浜笢鎺т环杞欢鍙互鎶撳彇鍟嗗搧SKU鍚?
    绛旓細鍦ㄦ悳绱㈠叧閿瘝鍚庯紝鐪嬪埌鐨勯偅涓涓釜鍟嗗搧锛屾瘮濡傦紝鎼滅储T鎭わ紝灏变細鐪嬪埌寰堝T鎭わ紝浠绘剰鐐瑰嚮涓涓猅鎭わ紙item锛夎繘鍒拌鎯呴〉闈紝鐒跺悗閫夋嫨棰滆壊銆佸昂鐮侊紝鐪嬪埌鐨勫氨鏄痵ku浜嗭紝浠庤寖鍥村ぇ灏忎笂璁诧紝spu>item>sku銆傛窐瀹濆晢鍝併浜笢鍟嗗搧鐨鍖哄埆 鏈鍚庤繕瑕佽涓涓嬫窐瀹濆拰浜笢鍦ㄨ繖3涓蹇电殑鍖哄埆銆傛窐瀹濅负浜嗗睍绀虹伒娲伙紝鏄敤item鏉ヤ唬琛ㄥ晢鍝佺殑锛...
  • 扩展阅读:京东2024招聘官网 ... 京东招聘信息今天 ... 京东招聘岗位一览表 ... 手机京东库存监控下单 ... 京东推出手机“法国30天盗抢保” ... 京东1园区启用 ... 手机扫一扫查商品价格 ... 京东自营最狠的投诉方式 ... 京东app苹果版本下载 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网