導航:首頁 > 編程語言 > python爬app數據手機號

python爬app數據手機號

發布時間:2022-08-05 00:51:26

A. 如何進行手機APP的數據爬取

python爬蟲手機的步驟:

1. 下載fiddler抓包工具

2. 設置fiddler

這里有兩點需要說明一下。

設置允許抓取HTTPS信息包

操作很簡單,打開下載好的fiddler,找到 Tools -> Options,然後再HTTPS的工具欄下勾選Decrpt HTTPS traffic,在新彈出的選項欄下勾選Ignore server certificate errors。

設置允許外部設備發送HTTP/HTTPS到fiddler

相同的,在Connections選項欄下勾選Allow remote computers to connect,並記住上面的埠號8888,後面會使用到。

好了,需要的fiddler設置就配置完成了。

3. 設置手機端

設置手機端之前,我們需要記住一點:電腦和手機需要在同一個網路下進行操作。

可以使用wifi或者手機熱點等來完成。

假如你已經讓電腦和手機處於同一個網路下了,這時候我們需要知道此網路的ip地址,可以在命令行輸入ipconfig簡單的獲得,如圖。

好了,下面我們開始手機端的設置。

手機APP的抓取操作對於android和Apple系統都可用,博主使用的蘋果系統,在此以蘋果系統為例。

進入到手機wifi的設置界面,選擇當前連接網路的更多信息,在蘋果中是一個嘆號。然後在最下面你會看到HTTP代理的選項,點擊進入。

進入後,填寫上面記住的ip地址和埠號,確定保存。

4. 下載fiddler安全證書

在手機上打開瀏覽器輸入一個上面ip地址和埠號組成的url:http://192.168.43.38:8888,然後點擊FiddlerRoot certificate下載fiddler證書。

以上就簡單完成了所有的操作,最後我們測試一下是否好用。

5. 手機端測試

就以知乎APP為例,在手機上打開 知乎APP。下面是電腦上fiddler的抓包結果。

結果沒有問題,抓到信息包。然後就可以使用我們分析網頁的方法來進行後續的操作了。

B. 用python寫的爬蟲將數據傳給android怎麼實現

初期不需要登錄的網站比較簡單,掌握http get post和urllib怎麼模擬,掌握lxml、BeautifulSoup等parser庫就可以了,多用firefox的firebug或者chrome的調試工具看瀏覽器是怎麼發包的。上面都是不需要登錄不需要下文件就可以做到的。

C. 誰說Python不克不及爬取APP上面的數據

function nTabs(thisObj,Num){
if(thisObj.className == "active")return;
var tabObj = thisObj.parentNode.id;
var tabList = document.getElementById(tabObj).getElementsByTagName("li");
for(i=0; i <tabList.length; i++)
{

D. 手機APP 上面的內容 python 有辦法抓取到嗎

可以,但是不提倡這種行為
1,在手機上設置代理,代理到你的電腦上
2,再在電腦上用tcpmp或者其他圖形化的抓包工具獲得數據包,分析這些數據包找到你要的數據
3,根據前兩步的結果,寫代碼模擬app的操作獲得你需要的數據

E. 想用Python抓包(keep APP),進而修改數據,得到偽造的結果,有什麼具體方案嗎

用fiddler抓包,獲取post的地址,然後偽造表單,用requests.post()把表單內容發過去試試。

F. python爬到的數據怎麼在自己製作的手機App

Fiddler是一個http協議調試代理工具,它能夠記錄並檢查所有你的電腦和互聯網之間的http通訊,設置斷點,查看所有的「進出」Fiddler的數據(指cookie,html,js,css等文件,這些都可以讓你胡亂修改的意思)。 Fiddler 要比其他的網路調試器要更加簡單,因為它不僅僅暴露http通訊還提供了一個用戶友好的格式。

G. 誰說Python不能爬取APP上面的數據

抓包嗎?????????????????

H. python 怎麼爬取app端數據

可以,但是不提倡這種行為 1,在手機上設置代理,代理到你的電腦上 2,再在電腦上用tcpmp或者其他圖形化的抓包工具獲得數據包,分析這些數據包找到你要的數據 3,根據前兩步的結果,寫代碼模擬app的操作獲得你需要的數據

I. 如何利用python 爬取知乎上面的數據

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author: Administrator
# @Date: 2015-10-31 15:45:27
# @Last Modified by: Administrator
# @Last Modified time: 2015-11-23 16:57:31
import requests
import sys
import json
import re
reload(sys)
sys.setdefaultencoding('utf-8')

#獲取到匹配字元的字元串
def find(pattern,test):
finder = re.search(pattern, test)
start = finder.start()
end = finder.end()
return test[start:end-1]

cookies = {
'_ga':'GA1.2.10sdfsdfsdf', '_za':'8d570b05-b0b1-4c96-a441-faddff34',
'q_c1':'23ddd234234',
'_xsrf':'234id':'"ZTE3NWY2ZTsdfsdfsdfWM2YzYxZmE=|1446435757|"',
'z_c0':'"=|14464e234767|"',
'__utmt':'1', '__utma':'51854390.109883802f8.1417518721.1447917637.144c7922009.4',
'__utmb':'518542340.4.10.1447922009', '__utmc':'51123390', '__utmz':'5185435454sdf06.1.1.utmcsr=hu.com|utmcgcn=(referral)|utmcmd=referral|utmcct=/',
'__utmv':'51854340.1d200-1|2=registration_date=2028=1^3=entry_date=201330318=1'}

headers = {'user-agent':
'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.111 Safari/537.36',
'referer':'http://www.hu.com/question/following',
'host':'www.hu.com','Origin':'http://www.hu.com',
'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8',
'Connection':'keep-alive','X-Requested-With':'XMLHttpRequest','Content-Length':'81',
'Accept-Encoding':'gzip,deflate','Accept-Language':'zh-CN,zh;q=0.8','Connection':'keep-alive'
}

#多次訪問之後,其實一載入時載入20個問題,具體參數傳輸就是offset,以20遞增

dicc = {"offset":60}
n=20
b=0

# 與爬取圖片相同的是,往下拉的時候也會發送http請求返回json數據,但是不同的是,像模擬登錄首頁不同的是除了
# 發送form表單的那些東西後,知乎是拒絕了我的請求了,剛開始以為是headers上的攔截,往headers添加瀏覽器
# 訪問是的headers那些信息添加上,發現還是拒絕訪問。

#想了一下,應該是cookie原因。這個載入的請求和模擬登錄首頁不同
#所以補上其他的cookies信息,再次請求,請求成功。
for x in xrange(20,460,20):
n = n+20
b = b+20
dicc['offset'] = x
formdata = {'method':'next','params':'{"offset":20}','_xsrf':''}

#傳輸需要json串,和python的字典是有區別的,需要轉換
formdata['params'] = json.mps(dicc)
# print json.mps(dicc)
# print dicc

circle = requests.post("http://www.hu.com/node/ProfileFollowedQuestionsV2",
cookies=cookies,data=formdata,headers=headers)

#response內容 其實爬過一次之後就大同小異了。 都是
#問題返回的json串格式
# {"r":0,
# "msg": ["<div class=\"zm-profile-section-item zg-clear\">\n
# <span class=\"zm-profile-vote-count\">\n<div class=\"zm-profile-vote-num\">205K<\/div>\n
# <div class=\"zm-profile-vote-type\">\u6d4f\u89c8<\/div>\n
# <\/span>\n<div class=\"zm-profile-section-main\">\n
# <h2 class=\"zm-profile-question\">\n
# <a class=\"question_link\" target=\"_blank\" href=\"\/question\/21719532\">
# \u4ec0\u4e48\u4fc3\u4f7f\u4f60\u8d70\u4e0a\u72ec\u7acb\u5f00\u53d1\u8005\u4e4b\u8def\uff1f<\/a>\n
# <\/h2>\n<div class=\"meta zg-gray\">\n<a data-follow=\"q:link\" class=\"follow-link zg-unfollow meta-item\"
# href=\"javascript:;\" id=\"sfb-868760\">
# <i class=\"z-icon-follow\"><\/i>\u53d6\u6d88\u5173\u6ce8<\/a>\n<span class=\"zg-bull\">•<\/span>\n63 \u4e2a\u56de\u7b54\n<span class=\"zg-bull\">•<\/span>\n3589 \u4eba\u5173\u6ce8\n<\/div>\n<\/div>\n<\/div>",
# "<div class=\"zm-profile-section-item zg-clear\">\n
# <span class=\"zm-profile-vote-count\">\n
# <div class=\"zm-profile-vote-num\">157K<\/div>\n
# <div class=\"zm-profile-vote-type\">\u6d4f\u89c8<\/div>\n
# <\/span>\n<div class=\"zm-profile-section-main\">\n
# <h2 class=\"zm-profile-question\">\n
# <a class=\"question_link\" target=\"_blank\" href=\"\/question\/31764065\">
# \u672c\u79d1\u6e23\u6821\u7684\u5b66\u751f\u5982\u4f55\u8fdb\u5165\u7f8e\u5e1d\u725b\u6821\u8bfbPhD\uff1f<\/a>\n
# <\/h2>\n<div class=\"meta zg-gray\">\n
# <a data-follow=\"q:link\" class=\"follow-link zg-unfollow meta-item\" href=\"javascript:;\" id=\"sfb-4904877\">
# <i class=\"z-icon-follow\"><\/i>\u53d6\u6d88\u5173\u6ce8<\/a>\n<span class=\"zg-bull\">•
# <\/span>\n112 \u4e2a\u56de\u7b54\n<span class=\"zg-bull\">•<\/span>\n1582 \u4eba\u5173\u6ce8\n
# <\/div>\n<\/div>\n<\/div>"]}
# print circle.content

#同樣json串需要自己 轉換成字典後使用
jsondict = json.loads(circle.text)
msgstr = jsondict['msg']
# print len(msgstr)

#根據自己所需要的提取信息規則寫出正則表達式
pattern = 'question\/.*?/a>'
try:
for y in xrange(0,20):
wholequestion = find(pattern, msgstr[y])
pattern2 = '>.*?<'
finalquestion = find(pattern2, wholequestion).replace('>','')
print str(b+y)+" "+finalquestion

#當問題已經訪問完後再傳參數 拋出異常 此時退出循環
except Exception, e:
print "全部%s個問題" %(b+y)
break

閱讀全文

與python爬app數據手機號相關的資料

熱點內容
程序員喜歡綠色 瀏覽:730
php編譯的主流軟體 瀏覽:364
操作系統伺服器版本下載地址 瀏覽:245
手機管家加密圖片打不開 瀏覽:839
基於單片機的智能散熱器控制器的設計 瀏覽:471
pdfadobereaderxi 瀏覽:487
本田雅閣壓縮機工作 瀏覽:680
河北編程排行榜 瀏覽:134
胸椎12輕度壓縮性骨折 瀏覽:103
演算法英文pdf 瀏覽:357
編譯原理第3版清華課後答案第二章 瀏覽:165
長虹黑白單片機是什麼電路 瀏覽:659
maven打war包命令 瀏覽:938
python追加值 瀏覽:171
編譯原理識別數字 瀏覽:994
協同伺服器和電腦版有什麼不一樣 瀏覽:490
程序員的心臟完整版 瀏覽:478
如何建立本地的ftp伺服器嗎 瀏覽:922
內存的照片在哪個文件夾 瀏覽:302
單片機模擬ic 瀏覽:49