Python Selenium - 获取所有内容并写入文件

问题描述 投票:0回答:1

noob在这里,只是设法被远程服务器主动拒绝。我怀疑连接尝试太多了。 ..实际上,我不应该每次尝试连接时都尝试连接新的代码,这样我就可以解决这个问题:那么,我怎样才能抓住页面上的所有内容,并将其保存到文件中...然后只是离线加载文件以搜索我需要的字段。

当我被拒绝时,我正在测试以下代码,所以我不知道什么有效 - 下面可能有错字:/任何人都可以提供任何建议或改进。

print ("Get CSS elements from page")
parent_elements_css = driver.find_elements_by_css_selector("*")
driver.quit()

print ("Saving Parent_Elements to CSV")
with open('ReadingEggs_BookReviews_Dump.csv', 'w') as file:
    file.write(parent_elements_css)

print ("Open CSV to Parents_Elements")
with open('ReadingEggs_BookReviews_Dump.csv', 'r') as file:
    parent_elements_css = file

print ("Find the children of the Parent")
# Print stuff to screen to quickly find the css_selector 'codes'
# A bit brute force ish 
for css in parent_elements_css:
    print (css.text)
child_elements_span     = parent_element.find_element_by_css_selector("span")
child_elements_class    = parent_element.find_element_by_css_selector("class")
child_elements_table    = parent_element.find_element_by_css_selector("table")
child_elements_tr       = parent_element.find_element_by_css_selector("tr")
child_elements_td       = parent_element.find_element_by_css_selector("td")

这些其他页面看起来很有趣

python selenium xpath/css selector

Get all child elements

Locating Elements

xpath-partial-match-tr-id-with-python-selenium(啊,我问过这个:D ..但是Sers的答案很棒)

我以前的文件保存是使用字典和json ...但由于此错误我无法使用它:“TypeError:WebElement类型的对象不是JSON可序列化的”。我之前没有保存过文件。

python selenium xpath css-selectors
1个回答
0
投票

你可以通过driver.page_source获得整个页面的html。然后你可以使用漂亮的汤来阅读html

from bs4 import BeautifulSoup
# navigate to page
html_doc = driver.page_source
soup = BeautifulSoup(html_doc, 'html.parser')
child_elements_span = soup.find_all('span')
child_elements_table = soup.find_all('table')

这是一个很好的文档,通过BeautifulSoup https://www.crummy.com/software/BeautifulSoup/bs4/doc/解析html

© www.soinside.com 2019 - 2024. All rights reserved.