【发布时间】:2019-12-28 08:51:41
【问题描述】:
我目前正在构建一个爬虫,管理代码,但需要以下程序的一些编码帮助/教程建议:
1) 使用 webdriver 打开的 .csv 格式链接列表
2) 为列表中的所有链接运行相同的抓取代码
3) 将输出附加到 .csv 文件中
代码的基本结构:
from selenium import webdriver
import time
import csv
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome
#driver.get("...link from csv file..."), e.g. with open('links.csv', 'r') as file: etc...
time.sleep(5)
elements = driver.find_elements_by_class_name('data-xl')
csvfile = "output.csv";
with open(csvfile, "w", newline="") as output:
writer = csv.writer(output)
writer.writerow(["Reads", "Average Time Spent", "Impressions", "Read Time", "Likes", "Publication Shares", "Times Stacked", "Link-Outs"])
column headers
driver.quit()
问题:
1) 如何使用 Python Selenium 打开 .csv,并逐行(1、+1、+1...)依次跳转链接
2) 为步骤 (1) 中访问的所有链接循环代码,即使出现错误(例如“找不到元素”等),也可以继续处理 .csv 上的下一项
3) 在 .csv 中创建标头(注意:上面的代码结构不准确)
4) 以追加的方式打印输出到.csv,不重叠
任何有关如何实现上述步骤的提示都会有所帮助
【问题讨论】:
标签: python selenium csv web-scraping