2017-07-09 1 views
0

Ghost.pyを使用してWebページ上にフォームを入力しようとしています。現時点では、私は頭痛を与えているCSSセレクタを使って、正しいフォームフィールドに挑戦しています。だから、私はGhost.pyに仕事をさせて、フォームフィールドと識別子のリストを私に渡すことにしました。これまでのところ、私が試してみました:Ghost.py webscrapingページ内のすべての要素を一覧表示

import ghost 

g = ghost.Ghost() 
with g.start(display=True) as session: 
    page, extra_resources = session.open("http://www.surfbirds.com/identifier/what-british-bird.htm") 
    if page.http_status == 200 and \ 
     'Head characters' in page.content: 
     print("got it!") 
     ressources = 
     session.evaluate('document.getElementByName("geog");') 
     print("ressources: {}".format(ressources)) 

これは、エラーがスローされます。

Ghost<f836191b-16e6-4a0d-b2c5-96d657556b46>: undefined(0): TypeError: 
'undefined' is not a function 
ressources: (None, []) 

私はこれを引き起こすもの見当がつかない、誰かが私が見なければならない方向を指してくださいだろうか?

+0

お礼ハーバートが、これはエラーメッセージを排除しますが、バック「geog」内の要素が、このページ内のすべてのフォームではないだけを提供します。それにもかかわらず、エラーは除外され、私はこの問題を閉鎖してマークします。そして、jquery構文についての良いチュートリアルを探してください。 – user2037829

答えて

0

このページには<geog>というタグはありません。あなたは、おそらく名前geogでフォーム要素を照会したいと思います:

document.querySelector('form[name=geog]') 
関連する問題