马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 int_lyc 于 2018-2-2 15:16 编辑
刚接触鱼C,看了小甲鱼的,从零开始学python,感觉发现了新大陆
小甲鱼讲课讲得太好了有木有
今天看了python爬虫的几个视频,发现上面讲的例子现在都不能爬了
于是乎——我打起了爬鱼C的主意,发现鱼C可以任意爬
由于鱼C视频资源只有vip能打包下载,普通用户只能一个一个视频下,太慢了有木有
但由于是个穷学生,近期的零花钱被我花光,暂时无法加入鱼Cvip大家庭
于是乎,就想怎么能方便下载到视频资源,想到我可以爬鱼C的视频下载地址啊
然后我就在各视频网页之间找规律,也确实找到了,规律太简单了有木有
目前只有百度云下载地址能用,就得保存3条数据,标题、链接地址和密码
输入的是范围,在网页找到一类的某一个地址,然后按这个扩大范围输入,应该就能找到这一类的地址
保存在文件,同时在屏幕上打印出来
更新:
加入了关键字搜索,输出标题中含有关键字的下载地址
代码已更新
再次更新:
修复了新出的视频地址找不到的Bug
代码已更新
以下是效果:
附上杂乱无章,我自己看着都难受的代码: import urllib.request as ur
def _print_(html,file,mod):
asd = html.split('<title>')[:]
title = asd[1].split('| 鱼C工作室</title>')[:][0]
if '–' in title:
tit = title.split('–')[:][0] + "-" + title.split('–')[:][1]
else:
tit = title
if mod in tit:
add = html.split('密码:')[:]
password = add[1][:4]
address = add[0][-60:]
ad = address.split("href="")[:]
radd = ad[1][:].split("" target="")[0]
file.write('%-34s%-7s%s\n'%(radd,password,tit))
print('%-34s%-7s%s'%(radd,password,tit))
with open("test.txt","w") as f:
low = int(input("输入最低数值(>0):"))
high = int(input("输入最高数值(<7000):"))
mod = input("输入要搜索的关键字:")
for i in range(low,high):
try:
url = 'http://blog.fishc.com/'+str(i)+'.html#prettyPhoto/0/'
resp = ur.urlopen(url)
html = resp.read().decode('utf-8')
if "密码:" in html:
_print_(html,f,mod)
else:
url = 'http://blog.fishc.com/'+str(i)+'.html/2#prettyPhoto/0/'
resp = ur.urlopen(url)
html = resp.read().decode('utf-8')
if "密码:" in html:
_print_(html,f,mod)
else:
continue
except:
continue
附上我爬取的视频地址集:
|