抓取网页生成电子书(calibre-E-bookmanagement怎么做代码Git教程)
优采云 发布时间: 2021-12-25 00:03抓取网页生成电子书(calibre-E-bookmanagement怎么做代码Git教程)
calibre-电子书管理是一款非常强大的电子书管理软件。它可以打开和转换各种格式的电子书,抓取新闻到本地阅读,并允许用户自定义新闻来源。抓取网页内容并生成电子书。利用这个功能,我制作了廖雪峰老师的Python教程和Git教程的epub电子书。使用firefox的epubReader插件,可以在电脑上打开阅读。您也可以在 Internet 上阅读。这种体验非常适合没有互联网但想学习的学生。
食谱是用python编写的。用学过的python获取学习资源,加强实践。操作方法非常简单。下载calibre-电子书管理就知道了。Calibre 还提供了用于配方准备的 api 文档。
下面是获取python教程的配方代码
#!/usr/bin/env python
# vim:fileencoding=utf-8
from __future__ import unicode_literals, division, absolute_import, print_function
from calibre.web.feeds.news import BasicNewsRecipe
class liaoxuefeng_python(BasicNewsRecipe):
title = '廖雪峰Python教程'
description = 'python教程'
max_articles_per_feed = 200
url_prefix = 'http://www.liaoxuefeng.com'
no_stylesheets = True
keep_only_tags = [{ 'id': 'main' }]
remove_tags=[{'class':'x-wiki-info'}]
remove_tags_after=[{'class':'x-wiki-content x-content'}]
def get_title(self, link):
return link.contents[0].strip()
def parse_index(self):
soup = self.index_to_soup('http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000')
div = soup.find('div', { 'class': 'x-wiki-tree' })
articles = []
for link in div.findAll('a'):
til = self.get_title(link)
url = self.url_prefix + link['href']
a = { 'title': til, 'url': url }
articles.append(a)
tutorial = [('廖雪峰python教程', articles)]
return tutorial
抓取Git教程只需要将parse_index方法中python教程的链接改成Git教程的链接即可。成品在本教程中