python如何爬取影视网站下载链接

这篇文章主要介绍python如何爬取影视网站下载链接,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

运行效果

python如何爬取影视网站下载链接

python如何爬取影视网站下载链接

导入模块

importrequests,re
fromrequests.cookiesimportRequestsCookieJar
fromfake_useragentimportUserAgent
importos,pickle,threading,time
importconcurrent.futures
fromgotoimportwith_goto

爬虫主代码

defget_content_url_name(url):
send_headers={
"User-Agent":"Mozilla/5.0(X11;Linuxx86_64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/51.0.2704.103Safari/537.36",
"Connection":"keep-alive",
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Language":"zh-CN,zh;q=0.8"

}
cookie_jar=RequestsCookieJar()
cookie_jar.set("mttp","9740fe449238",domain="www.yikedy.co")
response=requests.get(url,send_headers,cookies=cookie_jar)
response.encoding='utf-8'
content=response.text
reg=re.compile(r'<ahref="(.*?)"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"class="thumbnail-img"title="(.*?)"')
url_name_list=reg.findall(content)
returnurl_name_list

defget_content(url):
send_headers={
"User-Agent":"Mozilla/5.0(X11;Linuxx86_64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/51.0.2704.103Safari/537.36",
"Connection":"keep-alive",
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Language":"zh-CN,zh;q=0.8"

}
cookie_jar=RequestsCookieJar()
cookie_jar.set("mttp","9740fe449238",domain="www.yikedy.co")
response=requests.get(url,send_headers,cookies=cookie_jar)
response.encoding='utf-8'
returnresponse.text



defsearch_durl(url):
content=get_content(url)
reg=re.compile(r"{'\\x64\\x65\\x63\\x72\\x69\\x70\\x74\\x50\\x61\\x72\\x61\\x6d':'(.*?)'}")
index=reg.findall(content)[0]
download_url=url[:-5]+r'/downloadList?decriptParam='+index
content=get_content(download_url)
reg1=re.compile(r'title=".*?"href="(.*?)"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"')
download_list=reg1.findall(content)
returndownload_list
defget_page(url):
send_headers={
"User-Agent":"Mozilla/5.0(X11;Linuxx86_64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/51.0.2704.103Safari/537.36",
"Connection":"keep-alive",
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Language":"zh-CN,zh;q=0.8"

}
cookie_jar=RequestsCookieJar()
cookie_jar.set("mttp","9740fe449238",domain="www.yikedy.co")
response=requests.get(url,send_headers,cookies=cookie_jar)
response.encoding='utf-8'
content=response.text
reg=re.compile(r'<atarget="_blank"class="title"href="(.*?)"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"title="(.*?)">(.*?)<\/a>')
url_name_list=reg.findall(content)
returnurl_name_list
@with_goto
defmain():

print("=========================================================")
name=input("请输入剧名(输入quit退出):")
ifname=="quit":
exit()
url="http://www.yikedy.co/search?query="+name
dlist=get_page(url)
print("\n")
if(dlist):
num=0
count=0
foriindlist:
if(nameini[1]):
print(f"{num}{i[1]}")
num+=1
elifnum==0andcount==len(dlist)-1:
goto.end
count+=1
dest=int(input("\n\n请输入剧的编号(输100跳过此次搜寻):"))
ifdest==100:
goto.end
x=0
print("\n以下为下载链接:\n")
foriindlist:
if(nameini[1]):
if(x==dest):
fordurlinsearch_durl(i[0]):
print(f"{durl}\n")

print("\n")

break
x+=1

else:
label.end
print("没找到或不想看\n")

完整代码

importrequests,re
fromrequests.cookiesimportRequestsCookieJar
fromfake_useragentimportUserAgent
importos,pickle,threading,time
importconcurrent.futures
fromgotoimportwith_goto

defget_content_url_name(url):
send_headers={
"User-Agent":"Mozilla/5.0(X11;Linuxx86_64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/51.0.2704.103Safari/537.36",
"Connection":"keep-alive",
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Language":"zh-CN,zh;q=0.8"

}
cookie_jar=RequestsCookieJar()
cookie_jar.set("mttp","9740fe449238",domain="www.yikedy.co")
response=requests.get(url,send_headers,cookies=cookie_jar)
response.encoding='utf-8'
content=response.text
reg=re.compile(r'<ahref="(.*?)"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"class="thumbnail-img"title="(.*?)"')
url_name_list=reg.findall(content)
returnurl_name_list

defget_content(url):
send_headers={
"User-Agent":"Mozilla/5.0(X11;Linuxx86_64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/51.0.2704.103Safari/537.36",
"Connection":"keep-alive",
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Language":"zh-CN,zh;q=0.8"

}
cookie_jar=RequestsCookieJar()
cookie_jar.set("mttp","9740fe449238",domain="www.yikedy.co")
response=requests.get(url,send_headers,cookies=cookie_jar)
response.encoding='utf-8'
returnresponse.text



defsearch_durl(url):
content=get_content(url)
reg=re.compile(r"{'\\x64\\x65\\x63\\x72\\x69\\x70\\x74\\x50\\x61\\x72\\x61\\x6d':'(.*?)'}")
index=reg.findall(content)[0]
download_url=url[:-5]+r'/downloadList?decriptParam='+index
content=get_content(download_url)
reg1=re.compile(r'title=".*?"href="(.*?)"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"')
download_list=reg1.findall(content)
returndownload_list
defget_page(url):
send_headers={
"User-Agent":"Mozilla/5.0(X11;Linuxx86_64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/51.0.2704.103Safari/537.36",
"Connection":"keep-alive",
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Language":"zh-CN,zh;q=0.8"

}
cookie_jar=RequestsCookieJar()
cookie_jar.set("mttp","9740fe449238",domain="www.yikedy.co")
response=requests.get(url,send_headers,cookies=cookie_jar)
response.encoding='utf-8'
content=response.text
reg=re.compile(r'<atarget="_blank"class="title"href="(.*?)"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"title="(.*?)">(.*?)<\/a>')
url_name_list=reg.findall(content)
returnurl_name_list
@with_goto
defmain():

print("=========================================================")
name=input("请输入剧名(输入quit退出):")
ifname=="quit":
exit()
url="http://www.yikedy.co/search?query="+name
dlist=get_page(url)
print("\n")
if(dlist):
num=0
count=0
foriindlist:
if(nameini[1]):
print(f"{num}{i[1]}")
num+=1
elifnum==0andcount==len(dlist)-1:
goto.end
count+=1
dest=int(input("\n\n请输入剧的编号(输100跳过此次搜寻):"))
ifdest==100:
goto.end
x=0
print("\n以下为下载链接:\n")
foriindlist:
if(nameini[1]):
if(x==dest):
fordurlinsearch_durl(i[0]):
print(f"{durl}\n")

print("\n")

break
x+=1

else:
label.end
print("没找到或不想看\n")

print("本软件由CLY.所有\n\n")
while(True):
main()

以上是“python如何爬取影视网站下载链接”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注恰卡编程网行业资讯频道!

发布于 2021-05-30 14:08:23
收藏
分享
海报
0 条评论
186
上一篇:C语言如何实现游戏VIP停车场管理系统 下一篇:如何修改手机上ip地址
目录

    推荐阅读

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码