前提・実現したいこと
こんにちわ。python初学者です。
seleniumでスクレイピングしたデータを順番にリストに格納して出力したいのですが、上手くいきません。
現在、下記の該当コードでarryリストのなかに
arry =
["テキスト要素", "テキスト要素","テキスト要素"....],["数字", "数字", "数字",...],["テキスト要素2""テキスト要素2""テキスト要素2"....]
このような感じで出力されてしまっているのですが、僕としては
arry=
[["テキスト要素", "数字", "テキスト要素2"]["テキスト要素", "数字", "テキスト要素2"]["テキスト要素", "数字", "テキスト要素2"]......]
このように1セットづつリストに格納したいのですが、どのようにすればいいのでしょうか??ぜひお力を貸していただけないでしょうか??よろしくお願いします。
該当のソースコード
from selenium import webdriver import chromedriver_binary from selenium.webdriver.common.keys import Keys from selenium.webdriver.chrome.options import Options import urllib.request options = Options() options.headless = True options.add_argument('--headless') driver = webdriver.Chrome(options=options) driver.get("スクレイピングサイトURL") arry = [] selector = 'テキスト要素' element = driver.find_elements_by_css_selector(selector) element = [a.get_attribute("href") for a in element] date_element = "数字" dates = driver.find_elements_by_css_selector(date_element) dates = [b.text for b in dates] i = 'テキスト要素2' items = driver.find_elements_by_css_selector(i) items = [c.text for c in items] arry.append((element, dates, items)) print(arry) for q in arry: print(q)
試したこと
for文で回せばいいのかな?と考え最後に
for q in arry:
print(q)
このようなコードを書いたのですが結果は同じでした。すいません、ぜひご教授願いたいです。よろしくお願いします。
補足情報(FW/ツールのバージョンなど)
mac10.15.3
python3.8
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/12 14:19