PythonはWeCharesを登ってWeCharesを取って過程の図解を実現します。


はじめに
最近はWeChatのプログラム上のデータを取得して分析処理を行う必要があります。最初に思い付いた方法はpythonの爬虫類データを採用して、試してみると、目標URLを取得できないとか、ウェブサイトの中に指定されたパラメータの不確実性があるとか、暗号化問題があるとか、いろいろな問題を発見しました。最終的にCharesを使って指定されたWeChatウィジェットのデータをキャプチャし、ここで記録し、まとめます。
環境設定:
コンピュータ:Windows 10、有線網を接続します。
携帯:iPhone Xr、無線LANに接続する
注:有線網と無線網は同じセグメントにあるほうがいいです。
本論文の有線網のURL:192.168.131.24、無線網のURL:192.168.210.223
二、Charesの配置と使用1.ハーレーの紹介
Charesは、HTTPプロキシ、HTTPモニタ、プロキシを反転させ、プログラムがCharesのプロキシに接続されてインターネットにアクセスすると、Charesは、このプログラムの送信と受信のすべてのデータを監視することができます。これは開発者がインターネットに接続されているすべてのHTTP通信を見ることができます。これらはrequest、reponse、HTTP headers(cookiesとcaching情報を含む)を含みます。
Charesの主な機能:
1.SSLエージェントをサポートします。SSLを切り取って分析することができます。
2.流量制御をサポートします。スローネットワークおよび待ち時間の長い要求をシミュレートすることができます。
3.AJAXデバッグをサポートします。Jsonまたはxmlのデータは自動的にフォーマットできます。見やすいです。
4.AMFデバッグをサポートします。Flash RemotingやFlex Remotingの情報をフォーマットできます。見やすいです。
5.再送信ネットワーク要求をサポートし、バックエンドのデバッグを容易にする。
6.ネットワーク要求パラメータの変更をサポートします。
7.ネットワーク要求のキャプチャをサポートし、動的に修正する。
8.HTML、CSS、RSSの内容がW 3 C規格に合っているか確認します。
----百科事典
Charrlesは、有名なバッグツールで、モバイル端末とpcエンドネットワークにアクセスしたすべてのデータをつかむことができます。操作は簡単で、試用期間後30分ごとに再起動が必要です。また、起動は10秒遅れています。

2.Charesインストール
Chares公式サイトダウンロード:https://www.charlesproxy.com/download/ 

対応バージョンをダウンロードしてインストールを完了します。
3.証明書の設定(重要!)Charesインストール証明書:
Help->SSL Proxyng->Install Chares Root Crtificate

Windowsの端にChares証明書をインストールする必要があります。クリックした後、図のように(これはインストール成功後のスクリーンショットです):

設置証明書をクリックして、

次をクリックして、

ここで2番目を選択して、すべての証明書を下記に保存して、ブラウズをクリックして、信頼されたルート証明書の発行機関を選択します。

次のステップを確定します。

クリックが完了したらインポート成功を提示します。この時はHelp->SSL Proxyng->Install Chares Root Cot Citificateに再入場する必要があります。証明書の結果を見ると、成功した時は以下のように注意します。

 移動先に証明書をインストールする(重要です!)
モバイル端末も同様にChares証明書をインストールする必要があります。具体的な操作は以下の通りです。

 モバイル端末に証明書をインストールするオプションを選択します。

ヒント携帯電話のhttpプロキシは192.168.131.24で、ポートは8888で、携帯電話のブラウザでchls.pro/sslにアクセスしてインストール証明書をダウンロードする必要があります。IOSバージョンが10以上であれば、設定->>汎用->本機に関する証明書信頼設定でルート証明書の有効性に対する信頼性を開く必要があります。
次の操作は以下の通りです。
1.携帯電話で無線LANのリンクを開き、リンクを選択する無線LANの情報ページは以下の通りです。
        
2.httpエージェントの中から手動を選択し、Chares提示のhttpエージェントを追加する:192.168.1324、ポートは8888で、メモリを選択する。
        
3.携帯電話での設定->>汎用->本機->証明書の信頼設定について、右ボタンを押して、完全な信頼をオープンします。
         
注:携帯電話の設定が完了したら、インターネットができないと、iosのバージョンが高すぎて証明書を開けていない可能性が高いです。 信頼を完全にする 招く!
携帯電話が正しく接続されると、Charesがボックスを弾きます。接続が成功したと説明します。図中のIPアドレスは別の試験機です。

ブラウザの設定
Googleとファイアフォックスブラウザはデフォルトではシステムのプロキシ設定を使用しないが、Charesは自分をプロキシサーバーに設定することによって、パッケージの切り取りを完了するので、デフォルトではChromeとFirefoxブラウザのネットワーク通信内容を傍受することができない。傍受が必要ならば、Chromeにシステムを使用するプロキシ設定をすればいいです。または直接プロキシを127.1.0.1:8888に設定しても同じ効果があります。
これで、証明書の関連3点の設定が完了しました。
4.Charesの設定をキャンセルするWindowsエージェント
今回の目標はモバイル端末のWeChatウィジェットのデータを取り込むことですので、このオプションを取り消すのは無関係のデータ量をできるだけ減らすことです。

本機のIPアドレスと構成に関するポート番号を確認します。
デフォルトのポート番号は8888です。変更できます。
Help->Local ip Addres:

 Proxy->Proxy Settings:

sslプロキシ設定
ssl証明書のインストールが完了したら、Charesでsslプロキシ設定を開く必要があります。Proxy->SSL Proxyng Settingsで、Enbale SSL Proxy ingにチェックを入れて、

addをクリックして、新規に訪問する目的の住所、ヒントによって、空いているhostとportはすべての値に一致します。合わせて、ここでhostとportは*を記入します。

これでChares関連の配置は終了しました。
三、Charesデータキャプチャ
携帯電話とCharesの両方の設定が成功したら、WeCharesはhttpとhttpsのアクセスを自動的に取得します。

左の解析のリンクをクリックして、Contets、JSON Textを選択します。解析したWeChatのデータの内容が見えます。
Overviewでは、訪問したurlアドレスが表示されます。
https://nujump.tigerobo.com/HB_Jumer/ztjump.asx?topic=8&ars_data=kcb_1_announced_cop&pageIndex=1&pageSize=5、
主なパラメータは、PageIndexとPageSizeであり、つまりページインデックスとページ表示のデータ量であり、ブラウザでこのurlにアクセスすると、戻りの結果がJson形式のデータであることが分かります。

実は、Charesでurlリンクを解析すれば、python爬虫類でインターフェースから戻ってくるデータが得られます。アンチ爬虫類などの問題がなくて、とても便利です。
四、問題集
1.ネット上の問題:
インターネットの携帯電話とコンピュータのリンクのネットセグメントは同じでなければならないが、本テストでは無線網と有線網は同じネットワークにあるという話もある。
2.携帯やパソコンがネットワークに接続できない:
証明書の問題:証明書が正しくインストールされていませんでした。携帯電話で証明書を常に信頼しているかどうかを確認します。(たいていの場合はそうです。コンピュータで証明書が信頼された場所にインストールされているかどうかを確認します。ブラウザの証明書は正しく追加されていますか?
ファイアウォールの問題:Windows 10のファイアウォールを閉じて、着信防止接続をキャンセルします。

他の問題:ウェブCharesはWhite listをオープンしましたが、テスト時には見つけられませんでした。
3.https暗号化のリンクはunknowを表示します。
この問題が発生する可能性が最も大きく、原因が多いです。
一番可能なのは証明書の問題です。証明書が正しくインストールされていないので、携帯電話で証明書を常に信頼しているかどうかを確認してください。多くの場合このように、iOSバージョンの問題に注意し、高すぎる場合は常にこの証明書を信頼する必要があります。コンピュータで証明書が信頼された場所にインストールされているかどうかを確認します。
五、補充
現在、Charesを使ってモバイル端末のWeChatウィジェットデータを取り込むのは比較的に容易であるべきで、配置過程と設置証明書が比較的に煩雑である。
このほかにも、インターネットの伝达はTBSを使ってWeChatの手続きを利用しています。本人が试みたところ、データを正しく取ることができませんでした。
TBSはWeChatの手続きを参考にして以下のように接続しています。
https://my.oschina.net/sumiao/blog/1587350?utm_source=debugrun&utm_medium=referral
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。