有人推荐书籍《御伽草纸》,网上找了很久都找不到下载,估计是被Amazon版权了,但是在网易云阅读看到有书,所以就写个代码下载下来。

由于网易云阅读是js加载,用requests或者下载html的方法都太麻烦(毕竟这本书也才8万字),所以就简单粗暴的用selenium下载,而且还是截图(太懒啦...)

得到的图片被我转换为pdf:

python selenium下载电子书_网易云

 

附上代码:

1 #!/usr/bin/python3.4
2 # -*- coding: utf-8 -*-
3
4 from selenium import webdriver
5 import time
6 from selenium.webdriver.common.keys import Keys
7 from selenium.webdriver.common.action_chains import ActionChains
8
10 # 打开火狐浏览器
11 browser = webdriver.Chrome()
12 # 设置浏览器大小
13 browser.set_window_size(1200, 900)
14 # 输入网址
15 browser.get("http://yuedu.163.com/book_reader/ee677a1b42ed4af3b52adbe4c0fb6a23_4")
16 # 根据各自网速来判断网址加载时间
17 time.sleep(10)
18
19 # 选择阅读方式
20 browser.find_element_by_class_name("portrait").click()
21 time.sleep(5)
22 for i in range(3000):
23 # 截图
24 browser.save_screenshot("../jpg/txt/" + str(i + 1) + ".png")
25 time.sleep(5)
26
27 # 点击右边向右翻页
28 try:
29 ActionChains(browser).send_keys(Keys.ARROW_RIGHT).perform()
30 # ActionChains(browser).click().perform()
31 print("111111")
32 except:
33 ActionChains(browser).send_keys(Keys.ENTER).perform()
34 print("2222222222")
35
36

在我的github也放着呀:

​御伽草纸​