Python爬取80s网电影名称及迅雷(磁力)链接

更多教程请移步至:洛凉博客

求助请移步至:Python自学技术交流

大家可以登录下www.80s.tw网站,观察页面菜单。
最开始我是想把菜单下所有页面的都爬一遍。想想还是有点复杂。

《Python爬取80s网电影名称及迅雷(磁力)链接》 image.png

但是最开始通过匹配,这些菜单的链接都拿到了。

单线程去写这些肯定和复杂,就放弃了。最后就攻下了电影菜单下的。

最开始也是用正则匹配迅雷(磁力)链接,但是匹配的有点问题。

最后直接用BS4解决了。

下面大家看代码吧。

import requests
from bs4 import BeautifulSoup
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}
def url_1(page_o,page_t):
    url_s = []
    for page in range(page_o,page_t):
        url = 'http://www.80s.tw/movie/list/-----p'+str(page)
        url_s.append(url)
    return url_s
def html(url_s):
    mv_urls = []
    for url in url_s:
        html = requests.get(url,headers=headers)
        soup = BeautifulSoup(html.text,'lxml')
        for mv in soup.find_all('h3',{'class','h3'}):
            mv_url = mv('a')[0]['href']
            mv_urls.append('http://www.80s.tw'+mv_url)
    return mv_urls
def thlj(mv_urls):
    num = 0
    print('{0:^1}\t{1:^30}\t{2:^60}'.format('排序','电影名称', '迅雷链接或磁力链接'))
    for thurl in mv_urls:
        html = requests.get(thurl,headers=headers)
        soup_t = BeautifulSoup(html.text,'lxml')
        for xlurl in soup_t.find_all('span',{'class',"xunlei dlbutton1"}):
            num+=1
            xl_lj = xlurl('a')[0]['href']
            xl_name = xlurl('a')[0]['thunderrestitle']
            print('{0:^1}\t{1:^30}\t{2:^60}'.format(num,xl_name,xl_lj))
page_o = int(input('请输入需要爬取的开始页:'))
page_t = int(input('请输入需要爬取的结束页:'))
thlj(html(url_1(page_o,page_t)))

这些迅雷链接直接复制用迅雷就能下载了。还有一种磁力链接,我没用过,不知道怎么用。大家可以百度或谷歌下。

《Python爬取80s网电影名称及迅雷(磁力)链接》 image.png

这些代码都是挺简单的,我也是个菜鸟,只是给自己的成果做个记录。
也没有太多的技术分享,还望大家见谅!!!

    原文作者:Mo丶染洛凉
    原文地址: https://www.jianshu.com/p/5f5e7f1d272d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞