Remove redundant try finally block
This commit is contained in:
parent
7267b6eb92
commit
5aee36caa7
49
main.py
49
main.py
|
@ -17,33 +17,28 @@ while True:
|
|||
# First start mpv in the background
|
||||
# Also enable subtitles because why not
|
||||
proc = subprocess.Popen(['mpv', '--no-video', '--slang=zh-CN', url + cur])
|
||||
# The try finally block is to ensure that proc gets killed no matter what
|
||||
try:
|
||||
# I could use the Python requests library...
|
||||
# Nope, external dependencies suck, so enjoy this abomination
|
||||
body = gzip.decompress(urllib.request.urlopen(url + cur).read()).decode('utf-8')
|
||||
# Sometimes I forget what I'm even listening to
|
||||
# I WILL parse HTML with regex, you can't stop me
|
||||
print('NOW PLAYING', url + cur, re.search('"true">(.*?)<', body).group(1))
|
||||
# Get recommended stuff
|
||||
# I figured out the regexes by playing around with curl --compressed and then grepping
|
||||
lines = body.split('\n')
|
||||
rec = [
|
||||
(
|
||||
re.search('/video/(.*?)/', line).group(1), # ID
|
||||
re.search('title="(.*?)"', line).group(1), # Video name
|
||||
re.search('"name">(.*?)<', line).group(1), # up主 name
|
||||
lines[i + 1].strip() # View count
|
||||
)
|
||||
for i, line in enumerate(lines) if 'recommend_more' in line
|
||||
]
|
||||
# Print it out the smart way!
|
||||
# Who needs loops smh
|
||||
print(*enumerate(rec), sep='\n')
|
||||
proc.wait()
|
||||
finally:
|
||||
# Kill mpv with fire because sometimes it likes the music too much and refuses to stop if you ask nicely
|
||||
proc.kill()
|
||||
# I could use the Python requests library...
|
||||
# Nope, external dependencies suck, so enjoy this abomination
|
||||
body = gzip.decompress(urllib.request.urlopen(url + cur).read()).decode('utf-8')
|
||||
# Sometimes I forget what I'm even listening to
|
||||
# I WILL parse HTML with regex, you can't stop me
|
||||
print('NOW PLAYING', url + cur, re.search('"true">(.*?)<', body).group(1))
|
||||
# Get recommended stuff
|
||||
# I figured out the regexes by playing around with curl --compressed and then grepping
|
||||
lines = body.split('\n')
|
||||
rec = [
|
||||
(
|
||||
re.search('/video/(.*?)/', line).group(1), # ID
|
||||
re.search('title="(.*?)"', line).group(1), # Video name
|
||||
re.search('"name">(.*?)<', line).group(1), # up主 name
|
||||
lines[i + 1].strip() # View count
|
||||
)
|
||||
for i, line in enumerate(lines) if 'recommend_more' in line
|
||||
]
|
||||
# Print it out the smart way!
|
||||
# Who needs loops smh
|
||||
print(*enumerate(rec), sep='\n')
|
||||
proc.wait()
|
||||
# Choose a recommended video
|
||||
# If you don't like any, just stop the app, burn your computer, and try again
|
||||
cur = rec[int(input("Choose next: "))][0]
|
||||
|
|
Loading…
Reference in a new issue