问题描述
我正在使用 Selenium 进行网络抓取,它可以完美地收集所有数据。当我尝试将流转换为数据帧时出现问题:只有部分数据保存在数据帧上。
网页抓取后的打印显示我正在获取所有数据,但数据框创建后的打印显示它停在中间。我试图找出它是否是数据本身的模式,但没有成功。
我正在抓取一个大约 500 行 x 6 列的表格,将它保存在数据帧上后我得到的只是 333x6。
这是相关的一段代码:
table_raw = driver.find_element_by_xpath('//*[@id="body"]/div/div/div[1]/div[2]/div/div[1]/div/div[1]/div/lego-report/lego-canvas-container/div/file-drop-zone/span/content-section/div[9]/canvas-component/div/div/div[1]').text
print("===================TABLE RAW=====================")
print(table_raw)
# convert the content into a pandas dataframe and remove total and pagination info
table_df = pd.DataFrame(io.StringIO(table_raw))
table_df = table_df.head(-6)
print("===================TABLE DF 1=====================")
print(table_df)
有没有想过为什么会发生这种情况以及如何解决?另一个让我发疯的有用信息:有时它会收集所有数据,但有时不会。大多数时候不会。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)