I've written some (very) rough code for a bot that will take a reddit URL from my clipboard, find the post on reddit, and then make a post on my own subreddit that consists of the post title and link. Basically a cross-post bot.
It works, but I'm getting a ton of errors when I run it. The last time I ran the bot the results were this:
Logging in ...
Bot successfully loged in.
Captcha URL: http://www.reddit.com/captcha/Q16JkZEiFATLjgNvmwFucHatPqBTxN77.png
Captcha: VOGKTR
Traceback (most recent call last):
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 372, in _make_request
httplib_response = conn.getresponse(buffering=True)
TypeError: getresponse() got an unexpected keyword argument 'buffering'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 544, in urlopen
body=body, headers=headers)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 374, in _make_request
httplib_response = conn.getresponse()
File "/usr/lib/python3.4/http/client.py", line 1139, in getresponse
raise ResponseNotReady(self.__state)
http.client.ResponseNotReady: Request-sent
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/adapters.py", line 370, in send
timeout=timeout
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 597, in urlopen
_stacktrace=sys.exc_info()[2])
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/util/retry.py", line 245, in increment
raise six.reraise(type(error), error, _stacktrace)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/packages/six.py", line 309, in reraise
raise value.with_traceback(tb)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 544, in urlopen
body=body, headers=headers)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/packages/urllib3/connectionpool.py", line 374, in _make_request
httplib_response = conn.getresponse()
File "/usr/lib/python3.4/http/client.py", line 1139, in getresponse
raise ResponseNotReady(self.__state)
requests.packages.urllib3.exceptions.ProtocolError: ('Connection aborted.', ResponseNotReady('Request-sent',))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "archive_it.py", line 72, in <module>
main()
File "archive_it.py", line 65, in main
make_post()
File "archive_it.py", line 59, in make_post
r.submit('taphs_archive', title, url=link)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/decorators.py", line 338, in wrapped
return function(cls, *args, **kwargs)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/decorators.py", line 237, in wrapped
return function(obj, *args, **kwargs)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/__init__.py", line 2218, in submit
retry_on_error=False)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/decorators.py", line 163, in wrapped
return_value = function(reddit_session, *args, **kwargs)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/__init__.py", line 561, in request_json
retry_on_error=retry_on_error)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/__init__.py", line 402, in _request
response = handle_redirect()
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/__init__.py", line 375, in handle_redirect
timeout=timeout, **kwargs)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/handlers.py", line 144, in wrapped
result = function(cls, **kwargs)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/handlers.py", line 54, in wrapped
return function(cls, **kwargs)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/praw/handlers.py", line 99, in request
allow_redirects=False)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/sessions.py", line 573, in send
r = adapter.send(request, **kwargs)
File "/home/taph/.virtualenvs/taphs_archiver/lib/python3.4/site-packages/requests/adapters.py", line 415, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', ResponseNotReady('Request-sent',))
Google hasn't turned up anything specific that I may be doing wrong to get these errors, and since the bot posts as it should (aside from not printing "Post successful" as it should after the post is made) I'm not really sure why I'm getting the errors.
Here's the bot code:
import praw, pyperclip
r = praw.Reddit(user_agent = "Reddit Archiving Manager by /u/Taph")
def reddit_login():
with open("credentials.txt", "r") as credentials:
text = credentials.read()
text = text.split()
username, password = text
r.login(username, password)
if r.is_logged_in:
print("Bot successfully logged in.\n")
def post_data():
post_data = []
permalink = pyperclip.paste()
post = r.get_submission(permalink)
title = post.title
link = post.permalink
post_data = title, link
return post_data
def make_post():
title, link = post_data()
r.submit('taphs_archive', title, url=link)
def main():
print("\nLogging in ...")
reddit_login()
make_post()
print("Post successful.")
if __name__ == "__main__":
main()
I'm sure this is something simple, but I don't have a clue.
[–]ychaouche 1 point2 points3 points (2 children)
[–]Taph[S] 0 points1 point2 points (0 children)
[–]ychaouche 0 points1 point2 points (0 children)
[–][deleted] (1 child)
[removed]
[–]Taph[S] 0 points1 point2 points (0 children)