ウェブサイトテーブルの各行がファイルの新しい行に対応し、各値が次のような個々のセルにあるcsvファイルに生成されたリストをエクスポートしようとしています。Pythonリストの値をCSVファイルに書き込む
NAME.....ICO DATE....ICO PRICE....CURR. PRICE....24 HR ROI Stratis.....06/20/16.......$0.007...........$7.480................+38.80%
電流出力は次のようになります: - あなたのexampと同じget_css_sel()
で
['Patientory\n05/31/17\n$0.104\n$0.274\n+46.11%\n+25.54%\nN/A']
import csv
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait as wait
csvrows = []
def get_css_sel(selector):
posts = browser.find_elements_by_css_selector(selector)
for post in posts:
print(post.text)
csvrows.append([post.text])
browser = webdriver.Chrome(executable_path=r'C:\Scrapers\chromedriver.exe')
browser.get("https://icostats.com")
wait(browser, 20).until(EC.presence_of_element_located((By.CSS_SELECTOR, "#app > div > div.container-0-16 > div.table-0-20 > div.tbody-0-21 > div:nth-child(2) > div:nth-child(8)")))
get_css_sel("#app > div > div.container-0-16 > div.table-0-20 > div.tableheader-0-50") #fetch header of table
get_css_sel("#app > div > div.container-0-16 > div.table-0-20 > div.tbody-0-21 > div") #fetch rows of table
def create_csv(thelist):
with open('ICO.csv', 'w') as myfile:
for i in thelist:
wr = csv.writer(myfile, quoting=csv.QUOTE_ALL)
wr.writerow([i])
create_csv(csvrows)
を!また、引用符を削除するにはどうしたらいいですか?私はそれにremove()を呼び出すことはできません:AttributeError: 'NoneType'オブジェクトは属性 'remove'を持っていません – tklein
あなたは引用符を削除しようとしていますか? CSVでは、 'quoting = csv.QUOTE_ALL'を実行しました。あなたは不要な引用符をしたくない場合は削除してください。また、[デフォルトの 'dialect'は 'excel'です(https://docs.python.org/3/library/csv.html#csv.writer)。これで通常は十分です。 – aneroid
空行があり、 'post.text'のテキストがない場合は' if post.text: 'を' csvrows.append ... 'の前に置きます。 – aneroid