Subject: bug#52305: calibre unable to fetch news

From: rdes <[email-masked]>
Date: Wed, 29 Dec 2021 16:51:25 +0000

Hello Michael,

I am running guix on fedora 35.

When I run `SSL_CERT_DIR=/etc/ssl/certs calibre` I get:

Fetch news from CNET News
Conversion options changed from defaults:
  verbose: 2
  output_profile: 'generic_eink'
Resolved conversion options
calibre version: 5.21.0
{'asciiize': False,
 'author_sort': None,
 'authors': None,
 'base_font_size': 0,
 'book_producer': None,
 'change_justification': 'original',
 'chapter': None,
 'chapter_mark': 'pagebreak',
 'comments': None,
 'cover': None,
 'debug_pipeline': None,
 'dehyphenate': True,
 'delete_blank_paragraphs': True,
 'disable_font_rescaling': False,
 'dont_download_recipe': False,
 'dont_split_on_page_breaks': True,
 'duplicate_links_in_toc': False,
 'embed_all_fonts': False,
 'embed_font_family': None,
 'enable_heuristics': False,
 'epub_flatten': False,
 'epub_inline_toc': False,
 'epub_toc_at_end': False,
 'epub_version': '2',
 'expand_css': False,
 'extra_css': None,
 'extract_to': None,
 'filter_css': None,
 'fix_indents': True,
 'flow_size': 260,
 'font_size_mapping': None,
 'format_scene_breaks': True,
 'html_unwrap_factor': 0.4,
 'input_encoding': None,
 'input_profile': <calibre.customize.profiles.InputProfile object at 0x7f7a48bef2e0>,
 'insert_blank_line': False,
 'insert_blank_line_size': 0.5,
 'insert_metadata': False,
 'isbn': None,
 'italicize_common_cases': True,
 'keep_ligatures': False,
 'language': None,
 'level1_toc': None,
 'level2_toc': None,
 'level3_toc': None,
 'line_height': 0,
 'linearize_tables': False,
 'lrf': False,
 'margin_bottom': 5.0,
 'margin_left': 5.0,
 'margin_right': 5.0,
 'margin_top': 5.0,
 'markup_chapter_headings': True,
 'max_toc_links': 50,
 'minimum_line_height': 120.0,
 'no_chapters_in_toc': False,
 'no_default_epub_cover': False,
 'no_inline_navbars': False,
 'no_svg_cover': False,
 'output_profile': <calibre.customize.profiles.GenericEink object at 0x7f7a48bef5e0>,
 'page_breaks_before': None,
 'prefer_metadata_cover': False,
 'preserve_cover_aspect_ratio': False,
 'pretty_print': True,
 'pubdate': None,
 'publisher': None,
 'rating': None,
 'read_metadata_from_opf': None,
 'remove_fake_margins': True,
 'remove_first_image': False,
 'remove_paragraph_spacing': False,
 'remove_paragraph_spacing_indent_size': 1.5,
 'renumber_headings': True,
 'replace_scene_breaks': '',
 'search_replace': None,
 'series': None,
 'series_index': None,
 'smarten_punctuation': False,
 'sr1_replace': '',
 'sr1_search': '',
 'sr2_replace': '',
 'sr2_search': '',
 'sr3_replace': '',
 'sr3_search': '',
 'start_reading_at': None,
 'subset_embedded_fonts': False,
 'tags': None,
 'test': False,
 'timestamp': None,
 'title': None,
 'title_sort': None,
 'toc_filter': None,
 'toc_threshold': 6,
 'toc_title': None,
 'transform_css_rules': None,
 'unsmarten_punctuation': False,
 'unwrap_lines': True,
 'use_auto_toc': False,
 'verbose': 2}
InputFormatPlugin: Recipe Input running
Downloading recipe urn: builtin:cnetnews
Trying to get latest version of recipe: cnetnews
Using user agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36
Failed feed: CNET News
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET Reviews
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET How To
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET iPhone Update
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET Crave
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET Car Tech
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET Android Update
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET Gaming
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Failed feed: CNET Cheapskate
Traceback (most recent call last):
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1229, in do_open
    h.request(str(req.get_method()), str(req.get_selector()), req.data,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1245, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1291, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1240, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1008, in _send_output
    self.send(msg)
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 948, in send
    self.connect()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/http/client.py", line 1414, in connect
    self.sock = self._context.wrap_socket(self.sock,
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/gnu/store/sd2ic7bpv8fx3imy1j8xcjclx71sv6q0-python-3.8.2/lib/python3.8/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1683, in parse_feeds
    with closing(br.open_novisit(url, timeout=self.timeout)) as f:
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 241, in open_novisit
    return self._mech_open(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 204, in open
    response = meth(req, response)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 535, in http_response
    response = self.parent.error(
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 222, in error
    result = self._call_chain(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 655, in http_error_302
    return self.parent.open(new)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 257, in open
    return self._mech_open(url_or_request, data, timeout=timeout)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_mechanize.py", line 287, in _mech_open
    response = UserAgentBase.open(self, request, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_opener.py", line 193, in open
    response = urlopen(self, req, data)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 425, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 414, in _call_chain
    result = func(*args)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/browser.py", line 29, in https_open
    return self.do_open(conn_factory, req)
  File "/gnu/store/8jz60fbr93nbkdicgw2l3ijd38g9pf39-python-mechanize-0.4.5/lib/python3.8/site-packages/mechanize/_urllib2_fork.py", line 1233, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

Traceback (most recent call last):
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/bin/.calibre-parallel-real", line 21, in <module>
    sys.exit(main())
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/utils/ipc/worker.py", line 216, in main
    result = func(*args, **kwargs)
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/gui2/convert/gui_conversion.py", line 34, in gui_convert_recipe
    gui_convert('from-gui.recipe', output, recommendations, notification=notification,
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/gui2/convert/gui_conversion.py", line 28, in gui_convert
    plumber.run()
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/ebooks/conversion/plumber.py", line 1105, in run
    self.oeb = self.input_plugin(stream, self.opts,
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/customize/conversion.py", line 245, in __call__
    ret = self.convert(stream, options, file_ext,
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/ebooks/conversion/plugins/recipe_input.py", line 139, in convert
    ro.download()
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1051, in download
    res = self.build_index()
  File "/gnu/store/y01zg0bsrwvv171nkvbxl4wqxmxrvlys-calibre-5.21.0/lib/calibre/calibre/web/feeds/news.py", line 1231, in build_index
    raise ValueError('No articles found, aborting')
ValueError: No articles found, aborting

Thanks for looking into this!

Ryan

Sent with ProtonMail Secure Email.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐

On Thursday, December 23rd, 2021 at 11:44 PM, Michael Rohleder <[email-masked]> wrote:

> Hi,
>
> I'm trying to reproduce this, but no luck, I'm able to fetch news (cnet
>
> also).
>
> Is it possible that you are testing this in a foreigen environment?
>
> (Is so, you might need to `SSL_CERT_DIR=/etc/ssl/certs calibre` ...)
>
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> The brain is a wonderful organ; it starts working the moment you get up
>
> in the morning, and does not stop until you get to work.