selenium爬取乐文网小说

练手项目由来:

智商感人妹子一枚,有时候想看刚完结的小说,在网上不容易找到现成的txt文件,而在线看(一般乐文网上都有我要看的新文,所以锁定了乐文小说网)又是各种污污的广告,各种不方便,所以想方便自己,服务大家,特此新手上路,写了一个。

基本完成初期目标:

更改小说名,运行py程序,自动在指定目录以指定格式的小说名保存小说

  • 目标网址:http://www.lewenxiaoshuo.com
  • 核心技术:WebDriver + BeautifulSoup
  • 两步走:
    • webdriver模拟操作火狐浏览器:
      • 打开网址
      • 定位输入框,输入小说名
      • 定位搜索按钮并点击
      • 进入搜索结果列表,定位获取目标小说链接
      • 打开新的窗口,定位获取目标小说的章节链接列表
    • beautifulsoup + urllib2分析网页:
      • 通过id定位获取tag对象:标题、内容
      • 关键:对小说内容的格式进行清洗、调整
        • 小说标题拼接小说内容,追加到列表
        • 遍历列表,一次性写入txt文件

  • 定位不到元素:
    • 改用xpath定位,经测试xpath定位比css_selector好,但后者速度更快,而前者比网站依赖性太大
    • 元素加载未完成,等待一段时间:sleep、implicity_wait、wait.until等
  • 重点: 浏览器点击链接打开新的窗口之后,当前窗口句柄已经发生改变,要switch_to_window(new_window_handle)
  • 清洗调整文本格式,去掉多余无用的字符,比较繁杂,要针对对象具体分析:
    • 以换行符、空格符等分割文本便于清洗、去掉无用的标签、控制换行等

很简单的代码,如下所示:

#coding=utf-8

from selenium import webdriver
import selenium.webdriver.support.ui as ui
import time
from selenium.webdriver.support.ui import WebDriverWait
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值