PySpider問題記錄http599

問題簡述

背景說明:

python版本 3.5.2python

操做流程瀏覽器

  • 1.執行pyspider安裝:
  • pip install pyspider
  • 2.運行pyspider
  • pyspider all
  • 3.打開瀏覽器進行任務配置
  • localhost:5000
  • 4.新增並執行task

錯誤以下描述curl

[E 171009 20:37:58 base_handler:203] HTTP 599: SSL certificate problem: unable to get local issuer certificate
Traceback (most recent call last):
  File "d:\python\python35\lib\site-packages\pyspider\libs\base_handler.py", line 196, in run_task
    result = self._run_task(task, response)
  File "d:\python\python35\lib\site-packages\pyspider\libs\base_handler.py", line 175, in _run_task
    response.raise_for_status()
  File "d:\python\python35\lib\site-packages\pyspider\libs\response.py", line 172, in raise_for_status
    six.reraise(Exception, Exception(self.error), Traceback.from_string(self.traceback).as_traceback())
  File "d:\python\python35\lib\site-packages\six.py", line 692, in reraise
    raise value.with_traceback(tb)
  File "d:\python\python35\lib\site-packages\pyspider\fetcher\tornado_fetcher.py", line 378, in http_fetch
    response = yield gen.maybe_future(self.http_client.fetch(request))
  File "d:\python\python35\lib\site-packages\tornado\httpclient.py", line 102, in fetch
    self._async_client.fetch, request, **kwargs))
  File "d:\python\python35\lib\site-packages\tornado\ioloop.py", line 458, in run_sync
    return future_cell[0].result()
  File "d:\python\python35\lib\site-packages\tornado\concurrent.py", line 238, in result
    raise_exc_info(self._exc_info)
  File "<string>", line 4, in raise_exc_info
Exception: HTTP 599: SSL certificate problem: unable to get local issuer certificate

排除過程

  • 1.更新pyspider(使用最新版本),仍存在該問題
  • 2.使用代碼 validate_cert =false 仍存在給問題;
  • self.crawl(it.href, validate_cert = False)

後仔細查看報錯信息:

File "d:\python\python35\lib\site-packages\tornado\concurrent.py", line 238, in result
    raise_exc_info(self._exc_info)

後搜索得之:https://laracasts.com/discuss/channels/general-discussion/curl-error-60-ssl-certificate-problem-unable-to-get-local-issuer-certificate/replies/37017async

講述了相似的場景:ide

  1. 下載 http://curl.haxx.se/ca/cacert.pem
  2. 將文件報錯到上述目錄:d:\python\python35\lib\site-packages\tornado
  3. 問題解決。
相關文章
相關標籤/搜索