为了方便下载种子,自己写了个工具
本帖最后由 Simonl 于 2020-5-4 17:46 编辑每次打开电影网站下载种子,跳转N个网页,烦死了,干脆自己写一个工具,其他网站举一反三。
但是网站本身速度就慢,下载的时候可能还会卡住
有朋友说不会用,我打包成exe文件了,直接运行就可以
2.0版: https://lanzouj.com/ibqz8wh
2.1版https://lanzouj.com/ibwddmb 说明:发现带冒号的时候创建不了文件,这次加入了个判定,如果有冒号就替换成“.”,如果还有什么需求大家可以提出来
import requests,re
from bs4 importBeautifulSoup
a=BeautifulSoup(requests.get('http://www.lwgod.me/forum-292-1.html').text,'lxml')
b=a.find_all('tbody')
list_url=[]
list_name=[]
w=0
for i in b:
w+=1
try:
name=re.findall(r'【龙网BT组】.*】',i.text) #电影名字
print(w,name)
list_name.append(name)
url='http://www.lwgod.me/'+i.find('a')['href'] #二级网页地址
list_url.append(url)
except:
w-=1
pass
xz=input('请输入要下载的序号||输入多个空格隔开:')
q=xz.split(' ')
print(q)
for j in q:
j=int(j)
url_2=list_url#电影名称网址
name=list_name#电影名字
print(f'电影详情页地址:{url_2}')
a1=BeautifulSoup(requests.get(url_2).text,'lxml')#解析下载网页
b1='http://www.lwgod.me/'+a1.find('ignore_js_op').find('a')['href']
print(f'种子下载页地址:{b1}')
a2=BeautifulSoup(requests.get(b1).text,'lxml')
b2='http://www.lwgod.me/'+a2.find('div',style='border:1px solid #D9D9D9;margin:10px 0 5px;').find('a')['href']#种子下载地址
print(f'种子下载地址:{b2}')
with open(f'D:/浏览器下载/{name}.torrent','wb')as f: #这里目录位置自己改过,改成自己的目录
f.write(requests.get(b2).content)
print(f'{name}下载完成')
input('任意键结束')
很多人说看不到下载到哪里,因为我之前只直接放在我本地的目录,你电脑可能没有这个目录,所以可能闪退,这次我设置了创建目录,在D盘创建一个叫【种子下载】的目录,这样就不会报错了,还增加了无限循环,输入n才会退出
import requests,re,os
from bs4 importBeautifulSoup
path='d:/种子下载/'
try:
ml=os.makedirs(path)
print('种子下载目录创建成功')
except:
pass
a=BeautifulSoup(requests.get('http://www.lwgod.me/forum-292-1.html').text,'lxml')
b=a.find_all('tbody')
list_url=[]
list_name=[]
w=0
V=True
while V:
for i in b:
w+=1
try:
name=re.findall(r'【龙网BT组】.*】',i.text) #电影名字
print(w,name)
list_name.append(name)
url='http://www.lwgod.me/'+i.find('a')['href'] #二级网页地址
list_url.append(url)
except:
w-=1
pass
xz=input('请输入要下载的序号||输入多个空格隔开:')
q=xz.split(' ')
print(q)
for j in q:
j=int(j)
url_2=list_url#电影名称网址
name=list_name#电影名字
print(f'电影详情页地址:{url_2}')
a1=BeautifulSoup(requests.get(url_2).text,'lxml')#解析下载网页
b1='http://www.lwgod.me/'+a1.find('ignore_js_op').find('a')['href']
print(f'种子下载页地址:{b1}')
a2=BeautifulSoup(requests.get(b1).text,'lxml')
b2='http://www.lwgod.me/'+a2.find('div',style='border:1px solid #D9D9D9;margin:10px 0 5px;').find('a')['href']#种子下载地址
print(f'种子下载地址:{b2}')
with open(f'{path}{name}.torrent','wb')as f:
f.write(requests.get(b2).content)
print(f'{name}下载完成')
p=input('n结束,任意键继续')
if p=='n':
V=False
2.1版代码:
import requests,re,os
from bs4 importBeautifulSoup
path='d:/种子下载/'
try:
ml=os.makedirs(path)
print('种子下载目录创建成功')
except:
pass
a=BeautifulSoup(requests.get('http://www.lwgod.me/forum-292-1.html').text,'lxml')
b=a.find_all('tbody')
list_url=[]
list_name=[]
w=0
V=True
while V:
for i in b:
w+=1
try:
name=re.findall(r'【龙网BT组】.*】',i.text) #电影名字
name=re.sub(r'[:]','.',name) #删除冒号,防止创建不了文件 修改了这里
print(w,name)
list_name.append(name)
url='http://www.lwgod.me/'+i.find('a')['href'] #二级网页地址
list_url.append(url)
except:
w-=1
pass
xz=input('请输入要下载的序号||输入多个空格隔开:')
q=xz.split(' ')
print(q)
for j in q:
j=int(j)
url_2=list_url#电影名称网址
name=list_name#电影名字
print(f'电影详情页地址:{url_2}')
a1=BeautifulSoup(requests.get(url_2).text,'lxml')#解析下载网页
b1='http://www.lwgod.me/'+a1.find('ignore_js_op').find('a')['href']
print(f'种子下载页地址:{b1}')
a2=BeautifulSoup(requests.get(b1).text,'lxml')
b2='http://www.lwgod.me/'+a2.find('div',style='border:1px solid #D9D9D9;margin:10px 0 5px;').find('a')['href']#种子下载地址
print(f'种子下载地址:{b2}')
with open(f'{path}{name}.torrent','wb')as f:
f.write(requests.get(b2).content)
print(f'{name}下载完成')
p=input('n结束,任意键继续')
if p=='n':
V=False
2.2版,增加判断超时从新下载,防止卡住
import requests,re,os,eventlet
from bs4 importBeautifulSoup
path='d:/种子下载/'
try:
ml=os.makedirs(path)
print('种子下载目录创建成功')
except:
pass
a=BeautifulSoup(requests.get('http://www.lwgod.me/forum-292-1.html').text,'lxml')
b=a.find_all('tbody')
list_url=[]
list_name=[]
w=0
V=True
while V:
for i in b:
w+=1
try:
name=re.findall(r'【龙网BT组】.*】',i.text) #电影名字
name=re.sub(r'[:]','.',name) #删除冒号,防止创建不了文件
print(w,name)
list_name.append(name)
url='http://www.lwgod.me/'+i.find('a')['href'] #二级网页地址
list_url.append(url)
except:
w-=1
pass
xz=input('请输入要下载的序号||输入多个空格隔开:')
q=xz.split(' ')
print(q)
for j in q:
j=int(j)
url_2=list_url#电影名称网址
name=list_name#电影名字
print(f'电影详情页地址:{url_2}')
a1=BeautifulSoup(requests.get(url_2).text,'lxml')#解析下载网页
b1='http://www.lwgod.me/'+a1.find('ignore_js_op').find('a')['href']
print(f'种子下载页地址:{b1}')
a2=BeautifulSoup(requests.get(b1).text,'lxml')
b2='http://www.lwgod.me/'+a2.find('div',style='border:1px solid #D9D9D9;margin:10px 0 5px;').find('a')['href']#种子下载地址
print(f'种子下载地址:{b2}')
eventlet.monkey_patch()
o=True
oo=0
o1='下载超时,重新下载'#判断下载是否超时
while o:
oo+=1
print(f'第{oo}次下载')
with eventlet.Timeout(30,False): #如果时间超过30s,则重新循环,否则跳出循环
with open(f'{path}{name}.torrent','wb')as f:
f.write(requests.get(b2).content)
print(f'{name}下载完成')
o1='下载成功' #如果执行能到这里,则把O1改成下载成功,否则输出下载超时
o = False
print(o1)
p=input('n结束,任意键继续')
if p=='n':
V=False
tomjohnjoan 发表于 2020-4-22 12:22
小而强大
谢谢分享
其他网站你要自己写,这个不通用 9009LE 发表于 2020-4-22 01:08
win10系统 能够出现截图里面的内容 但是输入后 闪退,无法找到保存到那里去了
保存路径啊 站一楼,顶一下{:301_993:} 原创支持 这个利害了,一会试试去 感谢分享,谢谢。 感谢分享电影网站及方法{:1_918:} 感谢分享 句体怎么用,小白请教 wdj5000 发表于 2020-4-22 00:41
句体怎么用,小白请教
等下吧,我打包成exe win10系统 能够出现截图里面的内容 但是输入后 闪退,无法找到保存到那里去了