Python クローラー: JS を使用して、Ctrip.com のコメント エリアにある写真のダウンロード リンクを逆に取得します。

Python クローラー: JS を使用して、Ctrip.com のコメント エリアにある写真のダウンロード リンクを逆に取得します。

1 はじめに

記事の内容には著作権上の問題がある可能性があるため、編集者では関連する実装コードは提供せず、jsをやっている読者の助けになればと思い、jsの裏側からこの処理を実装する方法についてのみ説明します。逆関連の操作とコードが必要な読者は私だけにプライベートメッセージを送ってください!ただし、コードは学習のみを目的としており、商業活動には使用できないことに注意してください。読者は覚えておく必要があります。

2. 導入プロセス

JSリバースエンジニアリングに関しては、取得するデータが静的ページからのものではないことを意味します。つまり、リクエストでこのページにアクセスすると、必要なデータを取得できないため、どうすればよいですか?データを取得しますか?関連するリンク インターフェイスを見つけます。これには通常、ajax テクノロジが含まれます。一部のインターフェイスでは、関連するリクエスト パラメータの意味が理解できないため、これらのリクエスト パラメータの具体的な意味を理解するには、js を逆にする必要があります (もちろん、理解できないものもありますが、理解できるのはパラメータ値がどのように構成されているか、またはどこで見つけられるか)。
画像の説明を追加してください
コメント領域の画像ダウンロードリンクを取得するためなので、もちろんコメントの関連データも取得できます。これらのデータは次のようにこのインターフェイスから取得されます:
画像の説明を追加してください
リクエストパラメータは:
画像の説明を追加してください
2 つあることがわかりますリクエストパラメータのキー、すなわち arg と head を介して、このインターフェイスの後のランチャーが関連する JS コードの実装プロセスを見つけると、キーヘッドに対応する辞書の中央のキーに対応する値がcid を除くすべての固定値
画像の説明を追加してください
画像の説明を追加してください
画像の説明を追加してください
あり、cid 値も固定であると言えます。, pageIndex の値はページ数に一致; pageSize はページ数; sortType は並べ替え方法の 2 種類があります。1 つは時間ソート、もう 1 つはスマート ソート (デフォルトでスマート ソート)、poiId は景勝地の ID 番号である必要があります (この値は、現在のインターフェイスのスクリプト内の JSON データから取得できます)。その他は基本的には固定されていると言えます!以下のように:
画像の説明を追加してください
poiId は script タグの下の json データから取得されます。画像の説明を追加してくださいこの commentTagId パラメータ値はこれを参照する必要があります。画像の説明を追加してください
(必ずしも正しいとは限りません!)

疑問符の後のパラメータは、次のようにこの js コードからその構成原理を理解できます。
画像の説明を追加してください
の図の関連データと比較することで、読者は図の js コードの t がわかるはずです。は09031020210426062880で、これは Cookie のキー GUID の値です。

3. 走行結果

1 ページ目のデータ
画像の説明を追加してください
2 ページ目のデータ
画像の説明を追加してください

うまく公開できるかわかりません!したがって、上記のプロセスでは、js の逆操作の一部について詳しく説明していませんが、読者の皆様にはご理解いただけると幸いです。

おすすめ

転載: blog.csdn.net/qq_45404396/article/details/131679816