python selenium下载电子书

淩亂°似流年 2021-12-17 16:39 476阅读 0赞

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

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

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

996148-20161023103950701-1213413149.png

附上代码:

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

在我的github也放着呀:

御伽草纸

转载于:https://www.cnblogs.com/TTyb/p/5989152.html

发表评论

表情:
评论列表 (有 0 条评论,476人围观)

还没有评论,来说两句吧...

相关阅读

    相关 基于JSP的电子下载系统

    一、课题背景 随着现代数字出版技术的快速发展,电子书已逐渐成为阅读市场的主角之一。电子书具有容易携带、成本低廉、用户可定制等优点,越来越受到人们的青睐。为了更好地满足人们对电

    相关 python selenium下载电子

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