PythonはWeChatアプリケーション共通の方法コードの実例を登って詳しく説明します。


背景の紹介
最近、ある需要があります。大体、ある小さなプログラムのデータを取得することです。基本的にはモバイル端末にシェルを付けるブラウザだと思っていますので、Pythonでデータを取得したいです。ネットでどのように実現したら、私の実現過程と踏まれた穴を記録します。本文のキーワード:Python、小プログラム、Charesキャプチャー
ターゲットウィジェット:
公衆番号「同城商圏網」左下角「事業者探し」->自動車修理->乗用車修理->すべての事業者情報は、下図の通りです。

環境
PC端末:Windows 10
モバイル端末:iPhone
ソフトウェア:Chares
Charesバッグ
ネット上の大きい人の教程はとても良くて詳しいですが、いくつかのピットの説明を参加したいです。
現在取得している接続をCharesクリアし、干渉を防止します。とても役に立ちます

WeChatアプレットを開いて指定のインターフェースに入ります。Charesでは次のように表示されます。

ある具体的な商店に入ると、最初に要請したのはこれです。

そこで私達は推測しています。これは小さいプログラムに関するhttp要請かもしれません。中に入れば確認してみます。

この時の携帯の画面はこうです。

えっと、これらしいです。実は私も一つずつ試してみました。たくさん試したら見つけられますよ。もちろん英語が少し分かります。左側の英語が分かります。mechanntとは商店の意味です。
しかし、私たちはすべての事業者の情報を取得したいですが、どうすればいいですか?まずはCharesの黄色の掃引をクリックして、商店のリストに戻ってみます。

携帯電話の画面は以下の通りです。

間違いなくこのお願いです。
分析依頼
左から送信された要求を選択して、右側でOverviewタブをクリックして、要求情報を確認してください。POST要求であることが分かります。

POSTリクエストがフォームであることを知っていますが、フォームデータはどこにありますか?右の画面で右クリックし、Copy Requestをクリックしてフォームデータを取得できます。

ここにコピーしてみます。{"pageIndex":1,"pageSize":50,"regionId":"8","categoryId":"148","orderRule":0}ここを見て、私達は大体を推測できます。PageIndexはページ番号です。PageSizeは各ページの表示数です。regionIdは地域番号です。categoryIdは商品番号です。order Ruleはソート規則です。これでカバンを握り終わりました。
今回の包み方は理論的にはすべての手続きに適しています。他のものは自分で試してみてもいいです。
pythonコードを作成
ここでは簡単にデモを書きます。

import requests

url = "http://api.tc688.net/api/services/app/merchant/LoadCategoryMerchants"
header = {
  'Origin':'http://zazhi.tc688.net',
  'Host':'api.tc688.net',
  'User-Agent':'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/7.0.14(0x17000e2e) NetType/WIFI Language/zh_CN',
  'Referer':'http://zazhi.tc688.net/companylist?id=148',
}
data = {"pageIndex":1,"pageSize":50,"regionId":"8","categoryId":"148","orderRule":0}
r = requests.post(url=url,data=data,headers=header)
print(r.text)
実行結果:

プロジェクト
データ処理と交換地域の詳細コードについては、私のGitHub:ここをクリックして、Charesの設定教程を調べてください。を訪問してください。
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。