python - 将 Selenium 数据结果传递给 Pandas

标签 python selenium-webdriver web-scraping

我正在尝试自动执行返回信息表的搜索。我可以在 .text 中打印结果,但我的问题是如何将结果传递到 Pandas 数据框中。我问这个问题的原因有两个:因为我想将结果打印到 CSV 文件中,并且我需要 Pandas 中的结果以便稍后进行数据分析。如果有人可以提供帮助,我们将不胜感激。我的代码如下:

import time
from selenium import webdriver
import pandas as pd


search = ['0501020210597400','0501020210597500','0501020210597600']
df = pd.DataFrame(search)


chrome_path = [Chrome Path]
driver = webdriver.Chrome(chrome_path)

driver.get('https://enquiry.mpsj.gov.my/v2/service/cuk_search/')
x = 0

while x <(len(df.index)):
    search_box = driver.find_element_by_name('sel_value')
    new_line = (df[0][x]).format(x)
    search_box.send_keys(new_line)
    search_box.submit()
    time.sleep(5)
    table = driver.find_elements_by_class_name('tr-body')
    for data in table:
        print(data.text)
        driver.find_element_by_name('sel_value').clear()
    x +=1

driver.close()

最佳答案

要将 CSV 文件加载到 DataFrame,您可以执行以下操作:

df = pd.read_csv('example.csv')

参见在线文档:https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html#pandas.read_csv

要将数据写入 CSV,请参阅本文:Pandas writing dataframe to CSV file就这样。

解决办法是:

df.to_csv(file_name, sep='\t')

关于python - 将 Selenium 数据结果传递给 Pandas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45653019/

相关文章:

c# - Web Scrape w/Selenium;性能慢?

java - 从 Selenium 中获取 UL 标签的所有值

c# - 在 C# 中定位 HTML 的 XPath 内容

c# - HttpClient - 返回的内容与浏览器不同

python - 如何在aiohttp中发回图像/文件

python - 加权图的最短路径

Python 3.6 Selenium 如何通过父节点的引用找到子节点(xPath)

Python如何仅使用列索引对数据框进行子集化?

python - 如何使用面向异常的 text() 定位元素(selenium + python)?

python - 使用 BeautifulSoup 在 Python 中抓取缺货通知程序