看了好几个月的爬虫,今天终于进入实战:爬一本小说练练手。备忘吧。

第一次爬,要找一个‘简单点’的网站,否则爬不下来,比较打击信心。


第一项技能:requests.get

headers:从网页响应头里copy

注意:get的网页内容,一定要print出来和人家原版的内容比对一下,尤其是小说正文内容缺不缺。

第一次get、print出来,眼前闪现一片,特激动,根本就没认真对比,其实根本没有小说正文。

各种骚操作后,啥也没有,沮丧了好久,觉得自己不行啊。这点自信很久才找回来。

所以,第一次弄,找个简单点的网站,切记,切记。


第二项技能:搞定乱码

先找小说目录页。里面有各章节链接。get下来的网页全部是乱码,急啊。

备注:从网上找了很多方法,有的管用,有的很拉胯。这两个最有效,尤其第一个,那叫一个爽。


第三项技能:内容提取

无论是目录页,还是各章节内容,都需要把想要的内容,在一大堆网页代码中抽离出来

备注:xpath吧。符合我的个性。

'//' :全文搜索

'@' :后面是标签或属性值

'text()' :标签的内容

'dt' 里面的'contanins' :表示匹配的内容是后面的字符串

'following' :很管用。表示后面同级的所有标签。目录页最前面是最新章节链接,咱们不需要。通过dt匹配,再加上这个,就把从第一章的所有章节链接都弄下来了。

'@href' :a标签的值,就是章节的链接。


第四项技能:保存小说

找到各章节链接后,把链接和网站名组合一下,再一个个get,下载各章节,再用xpath解析小说内容。

写入文件就可以了。这块没遇到什么坑,就不记录了。


第五项技能:断点续传

利用excel,拿到各章节链接后,保存到excel中。用循环。

#读取excel中的第一行。

#下载完成后,再删掉这一行。

以后再用数据库试一试


第六项技能:selenium

针对'复杂的'网站,其实也挺简单的。

# 隐藏浏览器窗口

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('headless')

# 实例化webdriver

browser = webdriver.Chrome(options=chrome_options)

#打开浏览器,访问网页

browser.get(url)

#提取小说章节名称

title = browser.find_element(By.TAG_NAME,'h1').text

#通过class属性值定位小说内容

content = browser.find_element(By.CLASS_NAME,'showtxt').text

为了这么几行代码,折腾了很久。网上东西虽然多,但想要找到你需要的,真真不容易。蓦然回首,那几行代码竟在灯火阑珊处。

python:爬虫,爬一本小说是种什么体验呢?相关推荐

  1. 【爬虫】利用Python爬虫爬取小麦苗itpub博客的所有文章的连接地址并写入Excel中(2)...

    [爬虫]利用Python爬虫爬取小麦苗itpub博客的所有文章的连接地址并写入Excel中(2) 第一篇( http://blog.itpub.net/26736162/viewspace-22865 ...

  2. python爬虫 爬取小姐姐图片

    前言 大致熟悉了python的基础语法以后,开始学习爬虫基础. 一.爬取前的准备工作 python3.7环境(只要是python3版本都可以): 依赖包 : time requests re (缺少包 ...

  3. python爬虫爬取小姐姐图片(5762张)

    接触爬虫的第一天 第一步:现将python环境搭建好,工欲利其事必先利其器! 第二步:寻找目标网站,我选择的网站是http://www.win4000.com,里面有一个美女板块,里面有各种小姐姐的照 ...

  4. Python爬虫 | 爬取高质量小姐姐照片

    Python爬虫 | 爬取高质量小姐姐照片 1.数据来源分析 2.获取author_id_list和img_id 3.制作detial 4.制作detial_list 5.数据保存 6.批量获取 7. ...

  5. python爬虫爬取微信公众号小程序信息

    python爬虫爬取微信公众号小程序信息 爬取内容 某汽车维修信息提供的维修店名称,地点以及电话(手机)号码 爬取步骤 啥也别管,先抓包看看,在这里,博主使用的抓包软件是charles 抓包:将网络传 ...

  6. python如何爬取网站所有目录_用python爬虫爬取网站的章节目录及其网址

    认识爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟 ...

  7. 四小时学python爬虫爬取信息系列(第一天)

    四小时学python爬虫爬取信息系列(第一天)(全是干货) 1.安装requests库(可以在电脑python,我是进入anaconda我建的虚拟环境) anaconda虚拟环境法流程: conda ...

  8. Python爬虫---爬取腾讯动漫全站漫画

    Python爬虫---爬取腾讯动漫全站漫画 操作环境 网页分析 明确目标 提取漫画地址 提取漫画章节地址 提取漫画图片 编写代码 导入需要的模块 获取漫画地址 提取漫画的内容页 提取章节名 获取漫画源 ...

  9. python怎么模拟浏览器交互_干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏)...

    今天为大家带来的内容是:干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏) 文章主要介绍了python爬虫模拟浏览器的两种方法,结合实例形式分析了Python爬虫模拟浏览器的两种常见操 ...

最新文章

  1. Android自定义View之仿QQ侧滑菜单实现
  2. 吴恩达:大数据终将帮助机器拥有自主智慧
  3. 《玩转微信6.0》一1.2 微信初体验
  4. mybatis实现自定义SQL并且请求参数是集合
  5. 解决延迟有 Wi-Fi 6 就够了!
  6. Heritrix 3.1.0 源码解析(十一)
  7. 停在Z的危险:用苏斯博士的话,为什么孩子应该编码
  8. window.btoa()方法;使字符编码成base64的形式
  9. Ubuntu 想在 Windows 的 WSL 中做到领先
  10. win10系统崩溃怎么修复_新手怎么重装系统win10
  11. Django03-视图系统views
  12. 点击area不出现黑框_黑框淋浴房,黑得高级,黑得漂亮!
  13. eclipse 主题
  14. Android之线性布局的4个重要参数
  15. 北京10万房源压货炒家 新政实施一周无人喝彩
  16. java发送lrc文件格式_基于java的lrc歌词文件解析工具
  17. 微信小程序语音搜索功能
  18. 禁用笔记本自带键盘技巧
  19. 《罗曼蒂克消亡史》影评
  20. 【转】网页基础:网页设计(我所知道的所有的html和css代码(含H5和CSS3)),如有错误请批评指正...

热门文章

  1. 这10个Python项目超有趣!
  2. 写了个静态的网页-模仿网易云
  3. 无招胜有招-Vivado非工程模式下的FPGA设计流程
  4. 备案域名可以使用香港服务器吗?
  5. AE+c#开发之输出地图(输出当前视图中的地图)
  6. 计算机辅助制图CAC,制图和GIS的区别
  7. Gradle构建脚本入门
  8. centos 无线网络连接
  9. python将字符串逆序_为什么说Python是一门伟大的入门语言?(附免费教程)
  10. 【论文阅读】Drift with Devil