59396


皆様

お世話になります。  
Python+seleniumでクローラーを回しております。  
WEBで検索結果のテーブルからデータを抽出しようとしているのですが、取りたい要素にidやclassが割り振られておらず、同じタグが子要素として並んでいるためデータ取得ができません。ご指導をお願いできますでしょうか。

[code]

    from selenium import webdriver
    url = "https://suumo.jp/chintai/tokyo/ek_05780/nj_207/"
    driver.get(url)
    html = driver.page_source.encode('utf-8')    
    soup = BeautifulSoup(html, "html.parser")
    rows = soup.find_all(class_=['cassetteitem'])
    
    for row in rows:
    #各テーブルのデータ取得
    
        　　　　　　　for i in row.find_all(class_=['js-cassette_link']):
            　　　　　#テーブル内のデータの取得
    
                     i.find_element_by_xpath("//*[@class='js-cassette_link']td[3]")
    
[/code]

四苦八苦色々としましたが、driverでxpathのデータ取得は成功しましたが、driverをobjectとしてテーブル内のデータを分解していくと、以下のエラーしかでなくなりました。記載の仕方が悪いのでしょうか？ご指導をお願いします。  
⇒TypeError: 'NoneType' object is not callable

  


CC BY-SA 4.0
2019-08-24T23:59:48.960
57580
2019-10-01T10:03:44.913
2019-08-25T15:02:55.953
31870
31870
question
python selenium xpath
python selenium テーブル内のタグが子要素として並んでいる場合の値取得


iは、BeautifulSoupのオブジェクトで、webdriverのオブジェクトではありません。  
BeautifulSoupは、find find_all  
webdriverは、find_element_by_** find_elements_by_** です。

iのタグに統一性があるなら、  
i.div.td[3] とかでいけるかも


CC BY-SA 4.0
2019-10-01T10:03:44.913
59396
2019-10-01T10:03:44.913
36034
57580
answer