【发布时间】:2019-04-28 02:19:27
【问题描述】:
我正在尝试抓取此页面,我使用的代码是这样的:
page = get("https://www.uobgroup.com/online-rates/gold-and-silver-prices.page")
运行此代码时出现此错误:
Traceback (most recent call last):
File "/Users/lakesh/WebScraping/Gold.py", line 46, in <module>
page = get("https://www.uobgroup.com/online-rates/gold-and-silver-prices.page")
File "/Library/Python/2.7/site-packages/requests/api.py", line 72, in get
return request('get', url, params=params, **kwargs)
File "/Library/Python/2.7/site-packages/requests/api.py", line 58, in request
return session.request(method=method, url=url, **kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 512, in request
resp = self.send(prep, **send_kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 622, in send
r = adapter.send(request, **kwargs)
File "/Library/Python/2.7/site-packages/requests/adapters.py", line 511, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='www.uobgroup.com', port=443): Max retries exceeded with url: /online-rates/gold-and-silver-prices.page (Caused by SSLError(SSLError(1, u'[SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:590)'),))
也试过了:
page = get("https://www.uobgroup.com/online-rates/gold-and-silver-prices.page",verify=False)
这也不行。需要一些指导。
完整代码:
from requests import get
import requests
from requests.exceptions import RequestException
from contextlib import closing
from bs4 import BeautifulSoup
from collections import defaultdict
import json
requests.packages.urllib3.util.ssl_.DEFAULT_CIPHERS = 'DES-CBC3-SHA'
page = get("https://www.uobgroup.com/online-rates/gold-and-silver-prices.page")
html = BeautifulSoup(page.content, 'html.parser')
result = defaultdict(list)
last_table = html.find_all('table')[-1]
【问题讨论】:
-
你可能会从stackoverflow.com/questions/51991891/…得到一些指导
-
requests.packages.urllib3.util.ssl_.DEFAULT_CIPHERS = 'DES-CBC3-SHA' 试过这个并得到这个错误:名称'requests'没有定义
-
我从堆栈跟踪中猜测您的代码可能有一个
from requests import get。如果是这种情况,请添加import requests。 -
仍然无法获取数据。也发布了我的代码。
-
我所暗示的指导是,该站点可能正在做一些奇怪的事情,它接受的密码是什么。
curl -v ...表明该站点接受与 DHE-RSA-AES256-GCM-SHA384 的连接。试试看。