13

javascriptに「checkdata(code)」という関数があります。この関数は、ご覧のとおり、「code」という引数を使用して実行し、15文字の文字列を返します。

そこで、javascriptで引数なしの関数を呼び出す方法を見つけました(そしてテストしました)が、私の問題は、checkdata(code)を呼び出すと、常に「none」の戻り値を取得することです。これは私がこれまでに行っていることです:

wd = webdriver.Firefox()
wd.get('My Webpage')
a = wd.execute_script("return checkdata()", code)  //Code is a local variable
                                                   //from my python script
print a

非公式のセレンのドキュメントとここで読んだので、私はこれを作っています:リンク

しかし、前に言ったように、私は何も印刷されません。

そのパラメータを渡して関数を呼び出すにはどうすればよいですか?

4

2 に答える 2

14

文字列を作成する

a = wd.execute_script("return checkdata('" + code + "');")
于 2012-12-30T05:32:18.080 に答える
9

文字列を作成するのではなく(つまり、引用符を適切にエスケープする必要があります)、次のことを試してください。

a = wd.execute_script("return checkdata(arguments[0])", code)
于 2016-05-20T04:29:49.323 に答える