这篇文章给大家分享的是有关如何使用Selenium操作谷歌浏览器抓取多页的数据并将结果保存到CSV文件中的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
首先我们查看被抓取的网址中一共包含了5页内容:
我们修改上一篇文章的代码来实现今天的功能,接下来开始:
#导入包
from selenium import webdriver
import csv
#定义分页总数
MAX_PAGE_NUM = 5
#定义分页数字位数
MAX_PAGE_DIG = 3
#打开谷歌浏览器 并访问要抓取数据的地址
#注意:驱动chromedriver.exe与改python文件在同一个目录
driver = webdriver.Chrome('chromedriver.exe')
#创建csv文件进行写入
csv_file = open('results.csv', 'w')
csv_writer = csv.writer(csv_file)
#写入csv标题头内容
csv_writer.writerow(['购买者', '商品价格'])
for i in range(1, MAX_PAGE_NUM + 1):
#获取分页url中的数字内容:001 002...004 005
page_num = (MAX_PAGE_DIG - len(str(i))) * "0" + str(i)
url = "http://econpy.pythonanywhere.com/ex/" + page_num + ".html"
driver.get(url)
# 使用xpath找到购买者和商品价格元素列表
buyers = driver.find_elements_by_xpath('//div[@title="buyer-name"]')
prices = driver.find_elements_by_xpath('//span[@class="item-price"]')
# 打印所有信息
num_page_items = len(buyers)
for i in range(num_page_items):
#数据写入csv文件
csv_writer.writerow([buyers[i].text, prices[i].text])
#完成任务后 关闭浏览器
driver.close()
运行后会生成一个results.csv文件内容截图为:
过程为运行程序-打开谷歌浏览器-一次访问每个分页的地址然后抓取数据保存到csv文件中-关闭浏览器完成。
感谢各位的阅读!关于“如何使用Selenium操作谷歌浏览器抓取多页的数据并将结果保存到CSV文件中”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/219929.html