![]() |
Need help with 3 errors when running script - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: General Coding Help (https://python-forum.io/forum-8.html) +--- Thread: Need help with 3 errors when running script (/thread-31334.html) |
Need help with 3 errors when running script - pythoncoder999 - Dec-04-2020 So I got this bot script for reddit that I want to use for some automation for my business, it works up to the point of login to reddit user but fails at sending message, I get these 3 errors: ![]() Config.py contents:(fill in apostophies with apropriate info) username = ' ' #reddit username of your account password = ' ' #reddit password of your account messagesfile = 'example.txt ' #file with messages 1 per line usersfile = 'example2.txt ' #file with users to DM 1 per lineThe two txt files contain messages and test user. Now this is the code main python file: import time import string import requests from bs4 import BeautifulSoup import sys from random import randint from config import * def redditlogin(username, password,c): USER = username PASSWD = password API_TYPE = 'json' OP = 'login-main' RENDERSTYLE = 'html' ACTION = 'sub' loginpost = 'https://www.reddit.com/api/login/'+USER homeurl = 'https://www.reddit.com' print ("[+]Logging in as "+USER+"...") login_data = dict(user = USER, passwd = PASSWD, api_type = API_TYPE, op = OP) login = c.post(loginpost, data=login_data, headers={'User-Agent':"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36","x-requested-with":'XMLHttpRequest','referer':'https://www.reddit.com','origin':'https://www.reddit.com'}) if 'reddit_session' in str(login.headers): print ('[+]Successfully logged into account '+USER) else: print ('[-]Could not login') def sendmessages(userslist, messagelist,c): USER_LIST = [] MESSAGE_LIST = [] for line in messagelist.readlines(): message = line.strip('\n') MESSAGE_LIST.append(message) for line in userslist.readlines(): user = line.strip('\n') USER_LIST.append(user) for user in USER_LIST: MESSAGERECIEVER = user SELECTION = (randint(0,len(MESSAGE_LIST)-1)) MESSAGE_TEXT = MESSAGE_LIST[SELECTION] print ("[+]Messaging user "+user+ " with " +MESSAGE_TEXT) #print "[+]Retrieving http://reddit.com/u/" +MESSAGERECIEVER r = c.get('http://reddit.com/u/'+MESSAGERECIEVER,headers={'User-Agent':"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36","x-requested-with":'XMLHttpRequest','referer':'https://www.reddit.com','origin':'https://www.reddit.com'}).content soup = BeautifulSoup(r,'html.parser') MODHASH = soup.find('input',{'name':'uh'})['value'] REDDIT_SESSION = c.cookies['reddit_session'] params = ( ('app', 'res'), ) data = [ ('api_type', 'json'), ('from_sr', ''), ('subject', 'twqfqawfct'), ('text',MESSAGE_TEXT), ('to', MESSAGERECIEVER), ] sendrequest = c.post('https://www.reddit.com/api/compose', headers={'User-Agent':"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36","x-requested-with":'XMLHttpRequest','referer':'https://www.reddit.com','origin':'https://www.reddit.com','x-modhash':MODHASH,'reddit_session':REDDIT_SESSION}, params=params, data=data) def main(): with requests.session() as c: try: userslist = open(usersfile,'r') except IOError: sys.exit("[-]Invalid user list!") try: messagelist = open(messagesfile,'r') except IOError: sys.exit("[-]Invalid message list!") redditlogin(username,password,c) sendmessages(userslist,messagelist,c) if __name__ == '__main__': main()All help is much apreciated. I am not experienced with python if anyone could help me get this script working ![]() RE: Need help with 3 errors when running script - Larz60+ - Dec-04-2020 The code lines shown are the line numbers that were executed prior to receiving the error. So in Your case, the sequence is: line 89 (main()), then line 85, and finally line 54 where the error actually occurred. The code of that line is then shown, and the error message explains that the subscript used is the issue. Looking at that, you can't use a string 'value' as an index. use without quotes, which is the variable name.
RE: Need help with 3 errors when running script - pythoncoder999 - Dec-18-2020 (Dec-04-2020, 10:50 PM)Larz60+ Wrote: The code lines shown are the line numbers that were executed prior to receiving the error. thanks for the tip, but it says value is not defined RE: Need help with 3 errors when running script - Larz60+ - Dec-19-2020 try removing ['value'] entirely. I don't know what that is supposed to be. this part: MODHASH = soup.find('input',{'name':'uh'}) says to find a tag named input, with a name='uh' attribute. I can't see the page you're scraping, so it's difficult. |