Kindle:自动追更之Calibre2脚本
#!/usr/bin/env python2
# vim:fileencoding=utf-8
from __future__ import unicode_literals, division, absolute_import, print_function
from calibre.web.feeds.news import BasicNewsRecipe class rdzs(BasicNewsRecipe):
title = '儒道至圣'
description = '这是一个读书人掌握天地之力的世界。 才气在身,诗可杀敌,词能灭军,文章安天下。 秀才提笔,纸上谈兵;举人杀敌,出口成章;进士一怒,唇枪舌剑。 圣人驾临,口诛笔伐,可诛人,可判天子无道,以一敌国。 此时,圣院把持文位,国君掌官位,十国相争,蛮族虎视,群妖作乱。 此时,无唐诗大兴,无宋词鼎盛,无创新文章,百年无新圣。 一个默默无闻的寒门子弟,被人砸破头后,挟传世诗词,书惊圣文章,踏上至圣之路。'
max_articles_per_feed = 20000
fileName = 'xx/rdzs.txt'
cover_url = 'http://www.50zw.la/files/article/image/2/2806/2806s.jpg'
no_stylesheets = True
keep_only_tags = [dict(name='div', attrs={'class':'h1title'}),dict(name='div', attrs={'id':'htmlContent'})]
url_prefix = 'http://www.xxbiquge.com'
no_stylesheets = True
keep_only_tags = [dict(name='div', attrs={'class':'bookname'}),dict(name='div', attrs={'id':'content'})]
file_object = open(fileName,'r')
lastHref = file_object.read()
file_object.close()
hasLoad = bool(lastHref) def get_title(self, link):
return link.contents[0].strip() def parse_index(self):
soup = self.index_to_soup(self.url_prefix+"/5_5690") div = soup.find('div', { 'id': 'list' })
lastHref =self.lastHref
articles = []
for link in div.findAll('a'):
til = self.get_title(link)
href = link['href']
self.lastHref = href
if href == lastHref:
self.hasLoad = False
if self.hasLoad:
continue
else:
url = self.url_prefix + href
a = { 'title': til, 'url': url }
articles.append(a) tutorial = [(self.title, articles)]
file_write = open(self.fileName,'w')
file_write.write(self.lastHref)
file_write.flush()
file_write.close()
return tutorial
说明:
fileName :是为了简单的记录一下最后一次更新的网址,避免每次都全部更新 上述代码的详细讲解可以看:http://abirdcfly.github.io/2016/03/07/calibre2mobi/
Kindle:自动追更之Calibre2脚本的更多相关文章
- Kindle:自动追更之发送邮件
@echo off setlocal enabledelayedexpansion set from=Kindlekindle设置好信任的邮箱set pw=密码 set to=Kindle邮箱 cd ...
- Kindle:自动追更之云上之旅
2017年5月27: 原来的程序是批处理+Python脚本+Calibre2的方式,通过设定定时任务的方式,每天自动发动到自己的邮箱中.缺点是要一直开着电脑,又不敢放到服务器上~~ 鉴于最近公司查不关 ...
- CVS 文件自动移 tag 的 Python 脚本
CVS 文件自动移 tag 的 Python 脚本 背景 工作中使用的版本管理工具是 CVS,在两次发布中,如果修改的文件比较少,会选择用移 Tag 的方式来生成一个新 Tag 发布.文件比较少的情况 ...
- SQLServer 自动循环归档分区数据脚本
标签:SQL SERVER/MSSQL SERVER/数据库/DBA/表分区 概述 在很多业务场景下我们需要对一些记录量比较大的表进行分区,同时为了保证性能需要将一些旧的数据进行归档.在分区表很多的情 ...
- RHEL自动安装zookeeper的shell脚本
RHEL自动安装zookeeper的shell脚本 A:本脚本运行的机器,Linux RHEL6 B,C,D,...:待安装zookeeper cluster的机器, Linux RHEL6 首先在脚 ...
- Linux自动安装JDK的shell脚本
Linux自动安装JDK的shell脚本 A:本脚本运行的机器,Linux B:待安装JDK的机器, Linux 首先在脚本运行的机器A上确定可以ssh无密码登录到待安装jdk的机器B上,然后就可以在 ...
- SQL Server 自动循环归档分区数据脚本
标签:SQL SERVER/MSSQL SERVER/数据库/DBA/表分区 概述 在很多业务场景下我们需要对一些记录量比较大的表进行分区,同时为了保证性能需要将一些旧的数据进行归档.在分区表很多的情 ...
- windows下自动删除过期文件的脚本
windows下自动删除过期文件的脚本 前言: 比如日志文件每天都产生,时间长了就会有很大的一堆垃圾.整理一下 定时删除文件的方法. 正文: Windows: 定时删除tomcat日志和缓存.可以保留 ...
- Crontab无法自动执行,直接运行脚本却能执行
Crontab无法自动执行,直接运行脚本却能执行 http://bbs.chinaunix.net/thread-1926428-1-1.html crontab -e crontab内容为* * * ...
随机推荐
- Hibernate根据实体类自动创建表
Hibernate支持自动建表,在开发阶段很方便,可以保证hbm与数据库表结构的自动同步. 如何使用呢?很简单,只要在hibernate.cfg.xml里加上如下代码 Xml代码<propert ...
- css 浮动布局,清除浮动
浮动的特性: (1)浮动元素有左浮动(float:left)和右浮动(float:right)两种 (2)浮动的元素会向左或向右浮动,碰到父元素边界.其他元素才停下来 (3)相邻浮动的块元素可以并在一 ...
- postman基本使用
一.安装 官网:https://www.getpostman.com/ Postman是一个Chrome的一个插件工具,我们可以通过Chrome的应用商店进行进行搜索并安装,安装完成会在桌面上显示一个 ...
- __x__(35)0908第五天__ 层级 z-index
如果三个 div 全部设置 position: absolute; 绝对定位,且未设置 z-index, 则从代码结构上 下面的元素 会盖住 上面的元素. z-index 层级: 通过 z-i ...
- JavaScript 常见错误
1. 严格缩进 JavaScript 会自动添加句末的分号,导致一些难以察觉的错误 return { key: value }; // 相当于 return; { key: value }; 2. 括 ...
- 获取node异步执行结果的方式
拿数据库操作举例: var connection = mysql.createConnection(); connection.query(sql,function(err,rows){xxx} ); ...
- Gym 101606 - A/B/C/D/E/F/G/H/I/J/K/L - (Undone)
链接:https://codeforces.com/gym/101606 A - Alien Sunset 暴力枚举小时即可. #include<bits/stdc++.h> using ...
- 单元测试-unittest模块
1.简单的一个实例 import unittest def calc(a,b): return a+b class MyTest(unittest.TestCase): def testa(self) ...
- 新手上路、安装JDK教程
按照以下的图片步骤,登录http://www.oracle.com 下载 JDK (J2SE) JDK 1.0, 1.1, 1.2, 1.3, 1.4 1.5.(JDK5.0) → 支持注解. ...
- 解决loadrunner录制时 Request Connection: Remote Server @ 0.0.0.0:80 (Service=?) NOT PROXIED! (REASON: Unable to connect to remote server: rc = -1 , le = 0)问题
环境为win7+ie8+loadrunner11,录制脚本回放查看Recoding log 出现如下错误:[Net An. Error ( 7f8:1340)] Request Connecti ...