問題タブ [incapsula]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
curl - POST リクエストは Postman では機能しますが、Python リクエストでは機能しません (ロボット検出による 200 レスポンス)
Postman と cURL の両方で完全に機能する POST リクエストがあります (JSON データのブロブを返します)。ただし、Python の Requests ライブラリでまったく同じ要求を実行すると、200 成功応答が返されますが、JSON blob の代わりに次のようになります。
HTTP リクエスト ビンを使用して、Postman/cURL からのリクエストが Python Requests からのリクエストとまったく同じであることを確認しました。
cURL での Postman リクエストは次のとおりです。
...そしてここに私のPythonコードがあります:
ペイロードとヘッダーが正しく有効であることを確認しました。どんな助けでも大歓迎です。ありがとう!
web-scraping - incapsula で保護された Web サイトをスクレイピングするには?
https://www.genecards.org/cgi-bin/carddisp.pl?gene=ZSCAN22
上記の Web ページで をクリックSee all 33
すると、次の GET リクエストが Chrome DevTools で送信されることがわかります。
https://www.genecards.org/gene/api/data/Enhancers?geneSymbol=ZSCAN22
直接アクセスはブロックされます。
人形遣いを使ってみました。puppeteer で「See all 33」をクリックすることはできますが、結果の HTML ファイルを解析する必要があります。から直接結果を取得するのが最善https://www.genecards.org/gene/api/data/Enhancers?geneSymbol=ZSCAN22
です。puppeteerで「See all 33」をクリックした後の入手方法がわかりません。
apify が役立つかどうかはわかりません。
どなたか剥がし方教えて頂けないでしょうか?