0

このコードをウェブサイトで実行します: juventus.com.I can parse the title

from urllib import urlopen
import re

webpage = urlopen('http://juventus.com').read()
patFinderTitle = re.compile('<title>(.*)</title>')
findPatTitle = re.findall(patFinderTitle, webpage)
print findPatTitle

出力は次のとおりです。

['Welcome - Juventus.com']

しかし、別のウェブサイトで同じコードを試してみると、戻り値は何もありません

from urllib import urlopen
import re

webpage = urlopen('http://bp1.shoguto.com/detail.php?userg=hhchpxqhacciliq').read()
patFinderTitle = re.compile('<title>(.*)</title>')
findPatTitle = re.findall(patFinderTitle, webpage)
print findPatTitle

誰かが理由を知っていますか?

4

3 に答える 3

0

これは、urlopen リンクに javascript リダイレクトが含まれているためで、タイトル タグが含まれていないだけです。

内容は次のとおりです。

<script type='text/javascript'>top.location.href = 'https://www.facebook.com/dialog/oauth?client_id=466261910087459&redirect_uri=http%3A%2F%2Fbp1.shoguto.com&state=0f9abed6de7412b5129a4d105a4be25f&scope=email&0=publish_actions';</script>

また、私が間違っているかもしれませんが、私の記憶が正しければ、urlopen を使用して JavaScript コードを実行することはできません。別のpythonモジュールが必要になります。今はその名前を思い出せませんが、思い出せばJavaScriptコードを実行できるモジュールがありますが、それにはguiと使用する有効なブラウザが必要です. ファイアフォックス ...

于 2013-07-25T17:14:36.640 に答える