点赞发Nature
关注中Science
上一版本的爬取测试代码在这
第一版爬取代码
对上一版本进行了一些测试,主要问题有两个
-
用
time.sleep()
作为固定等待时长导致了爬取速度过慢,同时,也有可能存在网速问题等客观因素导致的抛错 -
在进行大量数据爬取时,会抛出
StaleElementReferenceException
错误
对代码进行了一些优化
def find_table(indicator, region, year):
wait = WebDriverWait(
browser,
40,
ignored_exceptions=(NoSuchElementException, StaleElementReferenceException),
)
browser.find_element_by_name("IndicateName").clear()
browser.find_element_by_name("IndicateName").send_keys(indicator)
browser.find_element_by_name("IndicateRegion").clear()
browser.find_element_by_name("IndicateRegion").send_keys(region)
browser.find_element_by_name("EndYear").send_keys(year)
element = browse