1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
#!/usr/bin/python3
import requests, re
#import sys
def test_link_text(text):
text = text.upper()
words = (
'ЭРДОГАН',
'ТРИУМФАЛЬНО',
'ВОЕННОЕ ВМЕШАТЕЛЬСТВО',
'ИНДЕКСИРОВАН БЕЗУКОРИЗНЕННО',
'ЗАКАДЫЧНО[ПАРРОМА]',
'РОБОТИЧЕСКИ',
'ЫТРЭЧ',
'ЧЕЧЕВИЧНАЯ ПОХЛЕБКА',
'ЗАКОННО!',
'АКРОБАТИЧЕСКОЕ',
'МЕСТА(!)',
'СУХОГРУЗ',
'ГАЗ-53',
'ОТКЛАДЫВАЕТСЯ ЛИНЕЙНО',
'ДЕЖУРНЫЕ С ВЫШЕСТОЯЩИМИ',
'Х О Р Т И Ц А',
'ЯРОСЛАВСКАЯ ГУБЕРНИЯ',
'ПРИСУТСТВИЕ ВОЕННОЕ',
'ЩУКА В МЕШКЕ',
'ИМЕНИЯ ВЫШЕСТОЯЩИХ',
'ФЕХТОВАЛЬНЫЕ НАВЫКИ',
'ОТМЕЧЕНО!',
'ЛИНЕЙНО',
'УКДВРК',
'КАЗНЬ ПО',
'Ь - ЕГО ВЕЛИЧЕСТВО',
'ЙОДИНОЛОВЫЙ',
'ОН ПРИГЛЯДЫВАЛСЯ ТАК ПРИСТАЛЬНО',
'ЭКРАНИРОВАНИЕ ПО ИНСТРУКЦИИ',
'ОДОБРЕНО!',
'ПОБЕДНО ШЕСТВУЕМ',
'МАШИНА И БУТЫЛКА ВИСКИ',
'БЕРКУТ'
)
for w in words:
if w in text:
return True
return False
def find_triumfalno():
page = 500
board = "b"
while page <= 600:
print("fetching page %d" % page)
url = "https://2ch.hk/%s/arch/%d.html" % (board, page)
r = requests.get(url)
for a in re.finditer(r'<a href="(/'+board+'/arch/[\d-]+/res/\d+\.html)">(.*?)</a>', r.text, flags=re.I|re.M):
link_href = a.group(1)
full_href = 'https://2ch.hk' + link_href
link_text = a.group(2)
if test_link_text(link_text):
print("%s => %s" % (full_href, link_text))
page += 1
def find_a2ch():
# with open('/tmp/text.txt') as f:
# known = f.read().strip().split(' ')
# known = tuple(map(lambda x: re.sub(r'^(.*?)/([\d]+)\.html$', '\\2', x), known))
dates = (
'11/15',
'11/16',
'11/17',
'11/18',
'11/19',
'11/20',
'11/21',
'11/22',
'11/23',
'11/24',
'11/25',
'11/26',
'11/27',
'11/28',
'11/29',
'11/30',
'12/01',
'12/02',
'12/03',
'12/04',
'12/05',
'12/06',
'12/07',
'12/08',
)
for date in dates:
print("fetching %s..." % date)
url = 'http://a2ch.ru/2016/' + date + '/'
r = requests.get(url)
for a in re.finditer(r'<a href="(/2016/(?:.*?)-(\d+)\.html)">(.*?)</a>', r.text, flags=re.I|re.M):
full_href = 'http://a2ch.ru' + a.group(1)
link_text = a.group(3)
thread_id = a.group(2)
if test_link_text(link_text):#; and thread_id not in known:
print("%s => %s" % (full_href, link_text))
if __name__ == '__main__':
#find_triumfalno()
find_a2ch()
|