【问题标题】:ValueError: No tables found while I am scraping webpagesValueError:我在抓取网页时找不到表
【发布时间】:2020-05-29 13:51:31
【问题描述】:

我需要阅读网页列表。例如,我有一个可以工作的网络

url1 = 'https://www.sia.ch/en/membership/member-directory/m/207778/'
driver = webdriver.Chrome('/Users/massaro/research/Valeria/chromedriver 2')
driver.get(url1)
html = driver.page_source
html = str(html).replace('<br />', '::')
df1 = pd.read_html(html)[0].iloc[[0,2],1]

比我有另一个页面出现错误

url2 = 'https://www.sia.ch/en/membership/member-directory/m/105531/'
driver = webdriver.Chrome('/Users/massaro/research/Valeria/chromedriver 2')
driver.get(url2)
html = driver.page_source
html = str(html).replace('<br />', '::')
df1 = pd.read_html(html)[0].iloc[[0,2],1]

ValueError: No tables found

我想有一个条件跳过没有表格的网页以避免错误。

【问题讨论】:

  • 但是你有这样的条件。没有表格的页面将引发ValueError。这是一个可测试的条件。
  • @usr2564301 是的,但我怎样才能在得到错误之前检查它?
  • “之前”,不,你没有。捕获错误是 standard procedure in Python

标签: python web-scraping


【解决方案1】:

Maybe this will help?你可以检查这个返回的值是真还是假:

if driver.find_element_by_css_selector("table"):
   # rest of your code here

类似的东西?

【讨论】:

    猜你喜欢
    • 2022-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-17
    • 2022-01-11
    • 1970-01-01
    • 1970-01-01
    • 2020-06-18
    相关资源
    最近更新 更多