-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfinalfornow.py
93 lines (75 loc) · 2.66 KB
/
finalfornow.py
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
import requests
from html5print import HTMLBeautifier
suchbegriff = input('Nach welchem Suchbegriff möchten sie auf Youtube live Gaming suchen?\n').lower()
#url = 'https://www.youtube.com/gaming/live'
url = 'http://www.youtube.com/results?search_query='+suchbegriff+'&sp=EgJAAQ%253D%253D'
print(url)
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36'
}
scrape = requests.get(url, headers=headers, timeout=999)
output = open('output.txt', 'w+', encoding="utf8")
beautify = HTMLBeautifier.beautify(scrape.text, 4)
output.write(beautify)
output.close()
ids = []
labels = []
addedVIDs = []
addedLabels = []
# die Textdatei öffnen im UTF-8 Modus
with open('output.txt', encoding="utf8") as f:
# Alle Zeilen lesen
lines = f.readlines()
# Durch jede Zeile loopen
for line in lines:
# Wenn String gefunden in einer Zeile dann..
if 'label' in line:
# füge diese Zeile zur ids-Liste
labels.append(line)
for videoId in lines:
# Wenn String gefunden in einer Zeile dann..
if 'addedVideoId' in videoId:
# füge diese Zeile zur ids-Liste
ids.append(videoId)
def labFind():
for lab in labels:
# Split nach dem String
einzelID = lab.split('label')
# Die Seite nach dem Split nutzen
value = einzelID[1]
# 4-Mal im String weiter gehen
for i in range(3):
value = value.replace(einzelID[1][i], ' ')
# Split um " zu entfernen
firstSplit = value.split('"')
# Split um , zu entfernen
secondSplit = firstSplit[0]
# zur addedVideoIds-Liste hinzufügen
if 'vor' in secondSplit:
addedLabels.append(secondSplit)
def idFind():
for id in ids:
# Split nach dem String
einzelID = id.split('addedVideoId')
# Die Seite nach dem Split nutzen
value = einzelID[1]
# 4-Mal im String weiter gehen
for i in range(4):
value = value.replace(einzelID[1][i], '')
# Split um " zu entfernen
firstSplit = value.split('"')
# Split um , zu entfernen
secondSplit = firstSplit[0].split(',')
# zur addedVideoIds-Liste hinzufügen
addedVIDs.append(secondSplit[0])
###FINAL###
labFind()
idFind()
endProd = []
for e in range(len(addedVIDs)):
if suchbegriff in addedLabels[e].lower():
endProd.append(addedVIDs[e])
print('\nDie ', suchbegriff, ' ID`s lauten: \n')
for formatierung in endProd:
print(formatierung)
print('\nEs sind insgesamt %i %s Livestreams auf Youtube live.' % (len(endProd), suchbegriff))