九州海上牧云记,电视剧节奏太慢?教你如何看全集

最近九州海上牧云记,在优酷上热播,画面唯美,演员也都养眼,可是这剧情的发展真的是太慢了,剧集注水严重,一集50分钟的电视剧得有10分钟在回忆,剪辑也有问题,有些地方情节跳跃性很大,连不上,每周也只有星期一到星期六每天更新两集,周日,想笙殿下、穆如寒、铁沁荷叶了,怎么办?这种事情,怎么可能抵挡我们追剧的热情?下面,我介绍一下,如何利用pyquery,爬取下载牧云记小说全集的方法,提供所有源代码,让大家在周日,也继续在九州的奇幻中漫游。
原料如下:
1:pyquery,具体的下载以及详细用法,详见博客http://blog.csdn.net/qq_29186489/article/details/78651064,本文不在赘述。
2:目标网站:落霞小说网:http://www.luoxia.com/muyun/#myj-xs
目标网站分析
查看落霞小说网,整部小说被分成了两部分,一部分是目录页面:
这里写图片描述
另一部分是目录对应的内容详情页:
这里写图片描述
基本思路,在章节目录页获取所有的章节的链接,存入列表,循环该列表,逐章节获取内容,并进行格式编码处理后,拼接内容,保存至本地。
代码具体实现
1:引入相关类库

# -*- coding: utf-8 -*-
import requests
from requests.exceptions import RequestException
from pyquery import PyQuery as pq

2:获取章节列表

def get_chapter_urlList(url):
    try:
        response=requests.get(url)
        doc=pq(response.text)
        results_list=doc("#content-list .book-list")
        results=pq(results_list[0])("ul li a")
        chapter_list=[]
        for result in results:
            chapter_list.append([result.text,pq(result).attr.href])
        return chapter_list
    except RequestException:
        return None

3:获取章节列表对应的文章内容,格式处理拼接成字符串,并保存至本地TXT文档

def get_chapter_content(li):
    story=""
    for item in li:
        try:
            response=requests.get(item[1])
            story=story+item[0]+"\n"
            response.encoding="utf-8"
            doc=pq(response.text)
            results=doc("#pagewrap > article > p")
            for result in results:
                story=story+result.text+"\n"
        except RequestException:
            return None
        finally:
            with open("story.txt","w",encoding="utf-8") as f:
                f.write(story)
                f.close()

4:程序入口

if __name__ == '__main__':
    chapter_list=get_chapter_urlList("http://www.luoxia.com/muyun/#myj-xs")
    get_chapter_content(chapter_list)

运行结果
这里写图片描述
程序还有很多可以改进的地方,比如利用多线程提高爬取效率,增加进度条等等,各位看官自完善吧。周末,让我们和魅灵一起起舞,和铁沁和页一起征战天下,得夸父斧,擒驰狼骥,爽啊。
完整代码下载地址:https://gitee.com/TianYaBenXiong/HuoQuJiuZhouHaiShangMuYunJiXiaoShuoQuanJi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值