I welcome everyone, I wanted to create a bot for the telegram, but it does not connect to the network. Climbing up the English found a way to use proxy, but doing everything according to the instructions does not want to connect anything. All dependencies are installed . .com / eternnoir / pyTelegramBotAPI / pull / 494 / commits / 10ec897fb541d1197c39ac6cc2fa7923041e2075 (the author reads that he works 100%). I tried this line

apihelper.proxy = {'http', ' http://10.10.1.10 size128 '} change the address and port, but to no avail. When you run the code displays the following:

2018-04-26 17:22:06,626 (util.py:65 PollingThread) ERROR - TeleBot: "AttributeError occurred, args=("'set' object has no attribute 'get'",) Traceback (most recent call last): File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\util.py", line 59, in run task(*args, **kwargs) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 159, in __retrieve_updates updates = self.get_updates(offset=(self.last_update_id + 1), timeout=timeout) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 129, in get_updates json_updates = apihelper.get_updates(self.token, offset, limit, timeout, allowed_updates) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\apihelper.py", line 175, in get_updates return _make_request(token, method_url, params=payload) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\apihelper.py", line 54, in _make_request timeout=(connect_timeout, read_timeout), proxies=proxy) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\sessions.py", line 465, in request resp = self.send(prep, **send_kwargs) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\sessions.py", line 573, in send r = adapter.send(request, **kwargs) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\adapters.py", line 337, in send conn = self.get_connection(request.url, proxies) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\adapters.py", line 241, in get_connection proxy = proxies.get(urlparse(url.lower()).scheme) AttributeError: 'set' object has no attribute 'get' " Traceback (most recent call last): File "C:/Users/Di/Desktop/anbot/tgtimed/main.py", line 15, in <module> bot.polling(none_stop=True) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 264, in polling self.__threaded_polling(none_stop, interval, timeout) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 287, in __threaded_polling polling_thread.raise_exceptions() File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\util.py", line 78, in raise_exceptions six.reraise(self.exc_info[0], self.exc_info[1], self.exc_info[2]) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\six.py", line 693, in reraise raise value File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\util.py", line 59, in run task(*args, **kwargs) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 159, in __retrieve_updates updates = self.get_updates(offset=(self.last_update_id + 1), timeout=timeout) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\__init__.py", line 129, in get_updates json_updates = apihelper.get_updates(self.token, offset, limit, timeout, allowed_updates) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\apihelper.py", line 175, in get_updates return _make_request(token, method_url, params=payload) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\telebot\apihelper.py", line 54, in _make_request timeout=(connect_timeout, read_timeout), proxies=proxy) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\sessions.py", line 465, in request resp = self.send(prep, **send_kwargs) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\sessions.py", line 573, in send r = adapter.send(request, **kwargs) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\adapters.py", line 337, in send conn = self.get_connection(request.url, proxies) File "C:\Users\Di\AppData\Local\Programs\Python\Python36-32\lib\site-packages\requests\adapters.py", line 241, in get_connection proxy = proxies.get(urlparse(url.lower()).scheme) AttributeError: 'set' object has no attribute 'get' 
  • Try apihelper.proxy = {'http': 'http://10.10.1.10:3128'} because traceback indicates that the proxy object must have a get method that the set does not have, but dictionaries have. - godva pm
  • @ godva, I copied what you suggested, but I didn’t see much of a difference. - user295197 5:06

1 answer 1

I have a similar problem. I tried to send through Sox5 through the torus, working proxies from other countries, but nothing, constantly produces such an error.

  2018-04-27 23:13:25,315 (util.py:65 PollingThread) ERROR - TeleBot: "ConnectionError occurred, args=(ProtocolError('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer')),) Traceback (most recent call last): File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 601, in urlopen chunked=chunked) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 346, in _make_request self._validate_conn(conn) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 850, in _validate_conn conn.connect() File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connection.py", line 326, in connect ssl_context=context) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/util/ssl_.py", line 329, in ssl_wrap_socket return context.wrap_socket(sock, server_hostname=server_hostname) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 407, in wrap_socket _context=self, _session=session) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 814, in __init__ self.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 1068, in do_handshake self._sslobj.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 689, in do_handshake self._sslobj.do_handshake() ConnectionResetError: [Errno 54] Connection reset by peer During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/adapters.py", line 440, in send timeout=timeout File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 639, in urlopen _stacktrace=sys.exc_info()[2]) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/util/retry.py", line 357, in increment raise six.reraise(type(error), error, _stacktrace) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/packages/six.py", line 685, in reraise raise value.with_traceback(tb) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 601, in urlopen chunked=chunked) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 346, in _make_request self._validate_conn(conn) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 850, in _validate_conn conn.connect() File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connection.py", line 326, in connect ssl_context=context) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/util/ssl_.py", line 329, in ssl_wrap_socket return context.wrap_socket(sock, server_hostname=server_hostname) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 407, in wrap_socket _context=self, _session=session) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 814, in __init__ self.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 1068, in do_handshake self._sslobj.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 689, in do_handshake self._sslobj.do_handshake() urllib3.exceptions.ProtocolError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/util.py", line 59, in run task(*args, **kwargs) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/__init__.py", line 159, in __retrieve_updates updates = self.get_updates(offset=(self.last_update_id + 1), timeout=timeout) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/__init__.py", line 129, in get_updates json_updates = apihelper.get_updates(self.token, offset, limit, timeout, allowed_updates) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/apihelper.py", line 175, in get_updates return _make_request(token, method_url, params=payload) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/apihelper.py", line 54, in _make_request timeout=(connect_timeout, read_timeout), proxies=proxy) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/sessions.py", line 508, in request resp = self.send(prep, **send_kwargs) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/sessions.py", line 618, in send r = adapter.send(request, **kwargs) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/adapters.py", line 490, in send raise ConnectionError(err, request=request) requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer')) " Traceback (most recent call last): File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 601, in urlopen chunked=chunked) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 346, in _make_request self._validate_conn(conn) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 850, in _validate_conn conn.connect() File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connection.py", line 326, in connect ssl_context=context) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/util/ssl_.py", line 329, in ssl_wrap_socket return context.wrap_socket(sock, server_hostname=server_hostname) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 407, in wrap_socket _context=self, _session=session) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 814, in __init__ self.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 1068, in do_handshake self._sslobj.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 689, in do_handshake self._sslobj.do_handshake() ConnectionResetError: [Errno 54] Connection reset by peer During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/adapters.py", line 440, in send timeout=timeout File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 639, in urlopen _stacktrace=sys.exc_info()[2]) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/util/retry.py", line 357, in increment raise six.reraise(type(error), error, _stacktrace) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/packages/six.py", line 685, in reraise raise value.with_traceback(tb) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 601, in urlopen chunked=chunked) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 346, in _make_request self._validate_conn(conn) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 850, in _validate_conn conn.connect() File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/connection.py", line 326, in connect ssl_context=context) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/urllib3/util/ssl_.py", line 329, in ssl_wrap_socket return context.wrap_socket(sock, server_hostname=server_hostname) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 407, in wrap_socket _context=self, _session=session) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 814, in __init__ self.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 1068, in do_handshake self._sslobj.do_handshake() File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 689, in do_handshake self._sslobj.do_handshake() urllib3.exceptions.ProtocolError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer')) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/main.py", line 678, in <module> bot.polling(none_stop=True) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/__init__.py", line 264, in polling self.__threaded_polling(none_stop, interval, timeout) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/__init__.py", line 287, in __threaded_polling polling_thread.raise_exceptions() File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/util.py", line 78, in raise_exceptions six.reraise(self.exc_info[0], self.exc_info[1], self.exc_info[2]) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/six.py", line 693, in reraise raise value File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/util.py", line 59, in run task(*args, **kwargs) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/__init__.py", line 159, in __retrieve_updates updates = self.get_updates(offset=(self.last_update_id + 1), timeout=timeout) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/__init__.py", line 129, in get_updates json_updates = apihelper.get_updates(self.token, offset, limit, timeout, allowed_updates) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/apihelper.py", line 175, in get_updates return _make_request(token, method_url, params=payload) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/telebot/apihelper.py", line 54, in _make_request timeout=(connect_timeout, read_timeout), proxies=proxy) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/sessions.py", line 508, in request resp = self.send(prep, **send_kwargs) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/sessions.py", line 618, in send r = adapter.send(request, **kwargs) File "/Users/sviperm/Documents/PycharmProjects/MyPasswordsBot/venv/lib/python3.6/site-packages/requests/adapters.py", line 490, in send raise ConnectionError(err, request=request) requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer')) 

Found two solutions:

  1. Let all traffic through Vpn (you can tunnel the bear, but there is only 500 MB + 1 GB for the publication on Twitter), a little, I agree.
  2. The second option is to send all traffic on the router through ip6v, it is a bit more complicated and not on all routers, BUT it bypasses any blockages, even the bell will work in tg.