Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Apr 28, 2023. It is now read-only.

Commit 5101eb9

Browse files
author
PokestarFan
committed
Update with final product
1 parent ca0f7e7 commit 5101eb9

File tree

3 files changed

+67
-0
lines changed

3 files changed

+67
-0
lines changed

.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,3 +102,11 @@ ENV/
102102

103103
#my login
104104
login.py
105+
106+
#pycharm
107+
.idea/
108+
109+
#files used by program
110+
blockusers.txt
111+
posts_written_to.txt
112+
writes.txt

.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

duplicate.py

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
import re
2+
import praw
3+
from login import reddit
4+
5+
def action():
6+
for sub_id in reddit.subreddit('all').stream.submissions():
7+
blockeduser = 0
8+
item_written_to = 0
9+
for item in reddit.inbox.unread(limit=None):
10+
if str(item.subject) == 'Remove me from posts':
11+
body = str(item.body)
12+
yes = re.search('\/u\/[a-zA-Z0-9]+',body)
13+
username = yes.group(0)
14+
if str(item.author) == username:
15+
with open('blockedusers.txt', 'a') as file:
16+
newstring = username.replace(r'/u/','')
17+
file.write(newstring)
18+
with open('posts_written_to.txt','r') as writefile:
19+
for id_to_use in writefile.readlines():
20+
if item_written_to == 0:
21+
if sub_id == id_to_use:
22+
item_written_to = 1
23+
duplicates = []
24+
submission = praw.models.Submission(reddit, id = sub_id)
25+
with open('blockusers.txt','r') as newfile:
26+
for line in newfile.readlines():
27+
if submission.author == line and blockeduser == 0:
28+
pass
29+
else:
30+
blockeduser = 1
31+
if blockeduser == 0 and item_written_to == 0:
32+
for duplicate in submission.duplicates():
33+
dup_sub = praw.models.Submission(reddit, id = duplicate)
34+
duplicates.append({'title':str(dup_sub.title), 'subreddit':str(dup_sub.subreddit), 'link':str(
35+
dup_sub.shortlink)})
36+
if len(duplicates) > 0:
37+
message = 'Here is a list of threads in other subreddits about the same content:\n'
38+
for dup in duplicates:
39+
message = str(message + '\n # [{}]({}) on /r/{}').format(dup['title'], dup['link'], dup['subreddit'])
40+
message = message + '\n\n ---- \n\n ^^I^^am^^a^^bot^^[FAQ](https://www.reddit.com/r/DuplicatesBot/wiki/index)-[Code](https://github.com/PokestarFan/DuplicateBot-[Bugs](https://www.reddit.com/r/DuplicatesBot/comments/6ypgmx/bugs_and_problems/)-[Suggestions](https://www.reddit.com/r/DuplicatesBot/comments/6ypg85/suggestion_for_duplicatesbot/)-[How to block](https://www.reddit.com/r/DuplicatesBot/wiki/index#wiki_block_bot_from_tagging_on_your_posts'
41+
try:
42+
submission.reply(message)
43+
with open('writes.log', 'a') as logfile:
44+
logfile.write('Replied to submission id {}'.format(sub_id))
45+
print('Replied to submission id {}'.format(sub_id))
46+
with open('posts_written_to.txt','a') as writefile2:
47+
writefile2.write(sub_id)
48+
except(UnboundLocalError):
49+
pass
50+
51+
52+
if __name__ == '__main__':
53+
action()

0 commit comments

Comments
 (0)