1
は、私は内側にJavaScriptを使用してWebページを持っていると私は、関数に渡された2つの変数と一致する必要がHTMLソースコード内のJavaScriptの変数マッチと数字。私はそれらの両方に一致する必要があります。これは私が今使用しているものである:。正規表現
data = getSoup(url) # my function to get the beautifulsoup object
script = data.find('script', text = re.compile(r'document\.write\(function\(')).text.replace('document.write(function(\'', '')
variable1 = script.split("', '")[0]
variable2 = script.split("', '")[1].replace("'));","")
しかし、私は常にではない関数はスクリプトタグのInSiteでもあるため(よりシンプルかつ「安全」なものを使いたい
更新: おかげでトーマスアヨブ答えに私は私のために働いて、簡単な解決策を見つけた:
script = re.findall(r"document\.write\(function\(\'(.*?)\', \'(.*?)\'\)\)\;", str(data))[0]
variable1 = script[0]
variable2 = script[1]
長い話を参照してください、あなたは 'のdocument.write(関数( '変数1'、 '変数2')を)削除しないようにしたい;' 'text'から関係なく、変数の名前を? –
変数が何であれ2つの変数を2つのpython変数に抽出する必要があります。私は正規表現に "document \ .write \(function \( '(。*?)'、 '(。*?)' \)\);しかし、私は2つの変数をどのように一致させるのかわかりません – Hyperion
[this](https://ideone.com/oUZxYQ)のようなもの? –