Python:输入电影名,爬获取到阳光电影网中对应名称的迅雷下载链接,获取的链接有点问题(具体问题在内容里)

请教一下,代码执行后,输入想要下载的电影名,得到的get(“href”)链接却无法下载,我看了看源代码标签,我获取到的HREF居然和源代码的迅雷下载地址不一样,我获取到的FREF和a标签的getText()是一样的(理论上获取到的连接应该和下列图片中的是一样的),有没有大神回答一下,这是怎么回事呢?

图片描述

#引用requests和bs4(BeautifulSoup4的缩写),如果没有安装bs4,可以使用pip install beautifulsoup4下载。
from urllib.request import quote

import bs4
import requests

#quote函数,可以帮我们把内容转为标准的url格式,作为网址的一部分打开。
movie = input('输入你想下载的电影名:')
gbkmovie=movie.encode('gbk')
#将汉字,用gbk格式编码,赋值给gbkmovie。
urlmovie = 'http://s.ygdy8.com/plus/so.php?kwtype=0&searchtype=title&keyword='+quote(gbkmovie)
#将gbk格式的内容,转为url,然后和前半部分的网址拼接起来。
res =requests.get(urlmovie)
#下载水形物语的搜索页面
bsmovie = bs4.BeautifulSoup(res.text,'html.parser')
#解析网页。
link = bsmovie.select('.co_content8 b a')
#查找目标。
finallink = 'http://www.ygdy8.com' + link[0].get('href')
#得到电影下载页的地址。
xiazai = requests.get(finallink).content.decode('gbk')
#使用requests模块,拿到电影下载页的源代码。使用content方法,拿到bytes数据,再进行decode,此时xiazai是字符串。
bsxiazai = bs4.BeautifulSoup(xiazai,'html.parser')
#解析网页。因为此时的xiazai已经是字符串,所以不需要加text。
download = bsxiazai.select('table tbody tr td a')
#查找目标。
for x in download:
   print (x.get('href'))
阅读 4.3k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏