Tus*_*eka 6 python selenium web-scraping selenium-chromedriver selenium-webdriver
我正在尝试使用 python 使用 selenium 进行网页抓取,但是每当我运行代码时,我都会收到错误
[4824:524:0818/154954.605:ERROR:ssl_client_socket_impl.cc(959)] handshake failed; returned -1, SSL error code 1, net_error -201
[4824:524:0818/154954.614:ERROR:ssl_client_socket_impl.cc(959)] handshake failed; returned -1, SSL error code 1, net_error -201
[4824:524:0818/154954.721:ERROR:ssl_client_socket_impl.cc(959)] handshake failed; returned -1, SSL error code 1, net_error -201
[4824:524:0818/154954.730:ERROR:ssl_client_socket_impl.cc(959)] handshake failed; returned -1, SSL error code 1, net_error -201
Empty DataFrame
Columns: [Rank, Country, Total Cases, New Cases, Deaths, New Deaths, Recovered, Active Cases, Critical]
Index: []
Run Code Online (Sandbox Code Playgroud)
我的代码我试图使用 selenium 访问名为 worldometer 的网站,并使用 pandas 从其网站上的表格中提取数据。我之前曾使用selenium访问其他网站,但当时没有给出错误。我使用的是python版本3.6.8
我尝试了安装 OpenSSl 等修复程序,但没有安装我还尝试了其他修复程序,例如添加 --ignore-certificate-errors 和 --ignore-ssl-errors 但这也不起作用
import pandas as pd
import time
# Covid 19 Webscraper
browser = webdriver.Chrome('C:\\webdrivers\\chromedriver.exe')
# opening sites
browser.get("https://www.worldometers.info/coronavirus/")
time.sleep(15)
#creating Data Frame
df = pd.DataFrame(columns=['Rank','Country','Total Cases','New Cases','Deaths','New Deaths','Recovered','Active Cases','Critical'])
# finding xpath and info
for i in browser.find_elements_by_xpath("//*[@id='main_table_countries_today']/tbody/tr"):
td_list = i.find_elements_by_tag_name('td')
row = []
for td in td_list:
row.append(td.text)
data={}
for j in range(len(df.columns)):
data[df.columns[j]] = row[j]
df.append(data, ignore_index=True)
print(df)
Run Code Online (Sandbox Code Playgroud)
您的浏览器商店似乎没有网站所需的证书。请使用以下 chrome 选项:
options = webdriver.ChromeOptions()
options.add_argument("--ignore-certificate-error")
options.add_argument("--ignore-ssl-errors")
browser = webdriver.Chrome('C:\\webdrivers\\chromedriver.exe',options=options)
browser.get("https://www.worldometers.info/coronavirus/")
Run Code Online (Sandbox Code Playgroud)
具有以下能力:
caps = webdriver.DesiredCapabilities.CHROME.copy()
caps['acceptInsecureCerts'] = True
caps['acceptSslCerts'] = True
driver = webdriver.Chrome(desired_capabilities=caps)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
19268 次 |
最近记录: |