91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用Python爬蟲抓取手機(jī)APP的數(shù)據(jù)

Wildesbeast ? 來源:今日頭條 ? 作者:有趣的程序媛 ? 2020-02-05 12:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

大多數(shù)APP里面返回的是json格式數(shù)據(jù),或者一堆加密過的數(shù)據(jù) 。這里以超級課程表APP為例,抓取超級課程表里用戶發(fā)的話題。

1

抓取APP數(shù)據(jù)包

表單:

私信小編01 領(lǐng)取完整項(xiàng)目代碼!

表單中包括了用戶名和密碼,當(dāng)然都是加密過了的,還有一個設(shè)備信息,直接post過去就是。

另外必須加header,一開始我沒有加header得到的是登錄錯誤,所以要帶上header信息。

2

登錄

登錄代碼:

import urllib2 from cookielib import CookieJar loginUrl = 'http://120.55.151.61/V2/StudentSkip/loginCheckV4.action' headers = { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', 'User-Agent': 'Dalvik/1.6.0 (Linux; U; Android 4.1.1; M040 Build/JRO03H)', 'Host': '120.55.151.61', 'Connection': 'Keep-Alive', 'Accept-Encoding': 'gzip', 'Content-Length': '207', } loginData = 'phoneBrand=Meizu&platform=1&deviceCode=868033014919494&account=FCF030E1F2F6341C1C93BE5BBC422A3D&phoneVersion=16&password=A55B48BB75C79200379D82A18C5F47D6&channel=MXMarket&phoneModel=M040&versionNumber=7.2.1&' cookieJar = CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookieJar)) req = urllib2.Request(loginUrl, loginData, headers) loginResult = opener.open(req).read() print loginResult

登錄成功 會返回一串賬號信息的json數(shù)據(jù)

和抓包時返回數(shù)據(jù)一樣,證明登錄成功

3

抓取數(shù)據(jù)

用同樣方法得到話題的url和post參數(shù)

做法就和模擬登錄網(wǎng)站一樣。詳見:http://my.oschina.net/jhao104/blog/547311

下見最終代碼,有主頁獲取和下拉加載更新。可以無限加載話題內(nèi)容。

#!/usr/local/bin/python2.7 # -*- coding: utf8 -*- """ 超級課程表話題抓取 """ import urllib2 from cookielib import CookieJar import json ''' 讀Json數(shù)據(jù) ''' def fetch_data(json_data): data = json_data['data'] timestampLong = data['timestampLong'] messageBO = data['messageBOs'] topicList = [] for each in messageBO: topicDict = {} if each.get('content', False): topicDict['content'] = each['content'] topicDict['schoolName'] = each['schoolName'] topicDict['messageId'] = each['messageId'] topicDict['gender'] = each['studentBO']['gender'] topicDict['time'] = each['issueTime'] print each['schoolName'],each['content'] topicList.append(topicDict) return timestampLong, topicList ''' 加載更多 ''' def load(timestamp, headers, url): headers['Content-Length'] = '159' loadData = 'timestamp=%s&phoneBrand=Meizu&platform=1&genderType=-1&topicId=19&phoneVersion=16&selectType=3&channel=MXMarket&phoneModel=M040&versionNumber=7.2.1&' % timestamp req = urllib2.Request(url, loadData, headers) loadResult = opener.open(req).read() loginStatus = json.loads(loadResult).get('status', False) if loginStatus == 1: print 'load successful!' timestamp, topicList = fetch_data(json.loads(loadResult)) load(timestamp, headers, url) else: print 'load fail' print loadResult return False loginUrl = 'http://120.55.151.61/V2/StudentSkip/loginCheckV4.action' topicUrl = 'http://120.55.151.61/V2/Treehole/Message/getMessageByTopicIdV3.action' headers = { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', 'User-Agent': 'Dalvik/1.6.0 (Linux; U; Android 4.1.1; M040 Build/JRO03H)', 'Host': '120.55.151.61', 'Connection': 'Keep-Alive', 'Accept-Encoding': 'gzip', 'Content-Length': '207', } ''' ---登錄部分--- ''' loginData = 'phoneBrand=Meizu&platform=1&deviceCode=868033014919494&account=FCF030E1F2F6341C1C93BE5BBC422A3D&phoneVersion=16&password=A55B48BB75C79200379D82A18C5F47D6&channel=MXMarket&phoneModel=M040&versionNumber=7.2.1&' cookieJar = CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookieJar)) req = urllib2.Request(loginUrl, loginData, headers) loginResult = opener.open(req).read() loginStatus = json.loads(loginResult).get('data', False) if loginResult: print 'login successful!' else: print 'login fail' print loginResult ''' ---獲取話題--- ''' topicData = 'timestamp=0&phoneBrand=Meizu&platform=1&genderType=-1&topicId=19&phoneVersion=16&selectType=3&channel=MXMarket&phoneModel=M040&versionNumber=7.2.1&' headers['Content-Length'] = '147' topicRequest = urllib2.Request(topicUrl, topicData, headers) topicHtml = opener.open(topicRequest).read() topicJson = json.loads(topicHtml) topicStatus = topicJson.get('status', False) print topicJson if topicStatus == 1: print 'fetch topic success!' timestamp, topicList = fetch_data(topicJson) load(timestamp, headers, topicUrl)

結(jié)果:

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • APP
    APP
    +關(guān)注

    關(guān)注

    33

    文章

    1592

    瀏覽量

    75995
  • python
    +關(guān)注

    關(guān)注

    57

    文章

    4876

    瀏覽量

    90047
  • 爬蟲
    +關(guān)注

    關(guān)注

    0

    文章

    87

    瀏覽量

    8092
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何使用Python讀取不間斷數(shù)據(jù),并將其傳輸?shù)絃abVIEW進(jìn)行處理?

    使用Python讀取Count,如何將讀取到的數(shù)據(jù)傳輸至Labview;傳輸過程中Python要保持讀取的動作,不能停止。
    發(fā)表于 01-23 11:09

    京東關(guān)鍵詞搜索商品列表的Python爬蟲實(shí)戰(zhàn)

    京東關(guān)鍵詞搜索商品列表 Python 爬蟲實(shí)戰(zhàn) 你想要實(shí)現(xiàn)京東關(guān)鍵詞搜索商品的爬蟲,我會從 合規(guī)聲明、環(huán)境準(zhǔn)備、頁面分析、代碼實(shí)現(xiàn)、反爬優(yōu)化 五個方面展開,幫助你完成實(shí)戰(zhàn)項(xiàng)目。 一、前置聲明(重要
    的頭像 發(fā)表于 01-04 10:16 ?752次閱讀

    如何使用機(jī)器人分析儀EtherCAT-Analyzer抓取主從站數(shù)據(jù)?

    EtherCAT總線在機(jī)器人控制總線里占據(jù)重要地位。這次,我們搭建了包含EtherCAT主從站和分析儀的完整環(huán)境,用機(jī)器人分析儀EtherCAT-Analyzer實(shí)際抓取主從站之間的通訊數(shù)據(jù)。實(shí)測
    的頭像 發(fā)表于 12-22 11:46 ?842次閱讀
    如何使用機(jī)器人分析儀EtherCAT-Analyzer<b class='flag-5'>抓取</b>主從站<b class='flag-5'>數(shù)據(jù)</b>?

    # 深度解析:爬蟲技術(shù)獲取淘寶商品詳情并封裝為API的全流程應(yīng)用

    需求。本文將深入探討如何借助爬蟲技術(shù)實(shí)現(xiàn)淘寶商品詳情的獲取,并將其高效封裝為API。 一、爬蟲技術(shù)核心原理與工具 1.1 爬蟲運(yùn)行機(jī)制 網(wǎng)絡(luò)爬蟲本質(zhì)上是一種遵循特定規(guī)則,自動
    的頭像 發(fā)表于 11-17 09:29 ?351次閱讀

    商品銷量數(shù)據(jù)抓取接口

    原理、實(shí)現(xiàn)步驟、代碼示例和注意事項(xiàng)。內(nèi)容基于Python技術(shù)棧,確保真實(shí)可靠。 一、接口原理 商品銷量數(shù)據(jù)通常存儲在電商平臺的服務(wù)器上(如淘寶、京東)。抓取接口的核心是通過HTTP請求模擬用戶行為,從目標(biāo)頁面或API獲取
    的頭像 發(fā)表于 10-21 18:02 ?606次閱讀
    商品銷量<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>抓取</b>接口

    Python 給 Amazon 做“全身 CT”——可量產(chǎn)、可擴(kuò)展的商品詳情爬蟲實(shí)戰(zhàn)

    一、技術(shù)選型:為什么選 Python 而不是 Java? 結(jié)論: “調(diào)研階段用 Python,上線后如果 QPS 爆表再考慮 Java 重構(gòu)?!?二、整體架構(gòu)速覽(3 分鐘看懂) 三、開發(fā)前準(zhǔn)備(5
    的頭像 發(fā)表于 10-21 16:59 ?520次閱讀
    用 <b class='flag-5'>Python</b> 給 Amazon 做“全身 CT”——可量產(chǎn)、可擴(kuò)展的商品詳情<b class='flag-5'>爬蟲</b>實(shí)戰(zhàn)

    從 0 到 1:用 PHP 爬蟲優(yōu)雅地拿下京東商品詳情

    PHP 語言 實(shí)現(xiàn)一個 可運(yùn)行的京東商品爬蟲 ,不僅能抓取商品標(biāo)題、價格、圖片、評價數(shù),還能應(yīng)對常見的反爬策略。全文附完整代碼, 復(fù)制粘貼即可運(yùn)行 。 一、為什么選擇 PHP 做爬蟲? 雖然
    的頭像 發(fā)表于 09-23 16:42 ?858次閱讀
    從 0 到 1:用 PHP <b class='flag-5'>爬蟲</b>優(yōu)雅地拿下京東商品詳情

    Nginx限流與防爬蟲配置方案

    在互聯(lián)網(wǎng)業(yè)務(wù)快速發(fā)展的今天,網(wǎng)站面臨著各種流量沖擊和惡意爬蟲的威脅。作為運(yùn)維工程師,我們需要在保證正常用戶訪問的同時,有效防范惡意流量和爬蟲攻擊。本文將深入探討基于Nginx的限流與防爬蟲解決方案,從原理到實(shí)踐,為大家提供一套完
    的頭像 發(fā)表于 09-09 15:52 ?911次閱讀

    termux如何搭建python游戲

    Pygame),確保已安裝`clang`編譯器:`apt install -y clang` 3. 權(quán)限問題:若需訪問手機(jī)文件,安裝`termux-setup-storage`并授權(quán)存儲訪問權(quán)限。 通過以上步驟,即可在Termux中搭建完整的Python游戲開發(fā)環(huán)境
    發(fā)表于 08-29 07:06

    怎么導(dǎo)出python邊緣計(jì)算中的APP,想進(jìn)行修改又找不到源碼?

    怎么導(dǎo)出python邊緣計(jì)算中的APP,想進(jìn)行修改又找不到源碼
    發(fā)表于 08-06 07:33

    python app不能運(yùn)行怎么解決?

    ;python_agent[1241]: xmlrpc request method supervisor.stopProcess failed;python_agent[1241]: xmlrpc request method supervisor.stopProces
    發(fā)表于 08-06 06:27

    拼多多電商 API 接口與競品,數(shù)據(jù)抓取速度大較量

    在當(dāng)今電商行業(yè),數(shù)據(jù)抓取速度是衡量平臺競爭力的核心指標(biāo)之一。高效的 API(應(yīng)用程序接口)能顯著提升數(shù)據(jù)分析、庫存管理和用戶個性化推薦的效率。本文將深入比較拼多多電商 API 接口與主要競品(如淘寶
    的頭像 發(fā)表于 07-09 15:29 ?795次閱讀

    如何用Brower Use WebUI實(shí)現(xiàn)網(wǎng)頁數(shù)據(jù)智能抓取與分析?

    數(shù)據(jù)時,不會被網(wǎng)站反爬機(jī)制識別和封禁,能穩(wěn)定有效地獲取數(shù)據(jù)和執(zhí)行任務(wù)。除了數(shù)據(jù)采集外,Browser-use還能抓取網(wǎng)頁全部交互元素,自動完成設(shè)置的動作,如填寫表單、內(nèi)容提取等。 Br
    的頭像 發(fā)表于 04-17 17:48 ?1133次閱讀
    如何用Brower Use WebUI實(shí)現(xiàn)網(wǎng)頁<b class='flag-5'>數(shù)據(jù)</b>智能<b class='flag-5'>抓取</b>與分析?

    復(fù)合機(jī)器人抓取精度的影響因素及提升策略

    復(fù)合機(jī)器人結(jié)合了移動機(jī)器人(如AGV)和機(jī)械臂的功能,廣泛應(yīng)用于物流、制造等領(lǐng)域。抓取精度是其核心性能指標(biāo)之一,直接影響作業(yè)效率和產(chǎn)品質(zhì)量。本文將探討復(fù)合機(jī)器人抓取精度的影響因素及提升策略。
    的頭像 發(fā)表于 04-12 11:15 ?1047次閱讀

    爬蟲數(shù)據(jù)獲取實(shí)戰(zhàn)指南:從入門到高效采集

    爬蟲數(shù)據(jù)獲取實(shí)戰(zhàn)指南:從入門到高效采集 ? ? 在數(shù)字化浪潮中,數(shù)據(jù)已成為驅(qū)動商業(yè)增長的核心引擎。無論是市場趨勢洞察、競品動態(tài)追蹤,還是用戶行為分析,爬蟲技術(shù)都能助你快速捕獲目標(biāo)信息。
    的頭像 發(fā)表于 03-24 14:08 ?1577次閱讀