urllib
のPython 3でWebサイトからソースコードを取得しようとしています。スクリプトを実行すると、ブラウザでJavaScriptが有効になっている必要があります。しかし、私はそれが有効になっていることを確信しています。ここに私のスクリプトとエラーです:エラーが表示されますJavaScriptを教えてください
エラー:
/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydevd.py" --multiproc --qt-support --client 127.0.0.1 --port 57883 --file /Users/titusflex/PycharmProjects/HelloPython/testtest.py warning: Debugger speedups using cython not found. Run '"/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5" "/Applications/PyCharm CE.app/Contents/helpers/pydev/setup_cython.py" build_ext --inplace' to build. pydev debugger: process 3089 is connecting
Connected to pydev debugger (build 145.598) b"http://www.google.com/adwords/select/interstitial_short_js.html'>var jsRedirect = true;var url = '\/um\/identity?authuser\x3d0\x26dst\x3d\/cm\/CampaignMgmt?';if (self.document.location.hash) {var querySeparator = (url.indexOf('?') == -1) ? '?' : '&'; url += querySeparator + 'frag=' + encodeURIComponent(self.document.location.hash.substring(1));}window.location.assign(url);"
Process finished with exit code 0
だから、あなたがダウンロードしたHTMLにはJavaScriptが含まれていますか?まあ、Pythonはあなたのためにそれを解釈しません、それはちょうどあなたに生のダウンロードされたHTMLソースコードを与えます。あなたがブラウザではなく、Javascriptを実行していない場合は、それだけで十分です。 – deceze
この場合の「ブラウザ」はPythonです。私は本当にあなたがそこにJavaScriptを持っているとは思わない。 – Biffen
これはPythonのエラーメッセージではありません。エラーはどこで確認できますか?ダウンロードしたページのコンテンツのように聞こえ、ページにJS検出コードが含まれているという事実に関連しています。ブラウザでJSを表示するときに期待通りにJSを動作させる必要がある場合は、これを行うためにヘッドレスブラウザが必要です。 –