python:爬虫,爬一本小说是种什么体验呢?
看了好几个月的爬虫,今天终于进入实战:爬一本小说练练手。备忘吧。
第一次爬,要找一个‘简单点’的网站,否则爬不下来,比较打击信心。
第一项技能: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:爬虫,爬一本小说是种什么体验呢?相关推荐
- 【爬虫】利用Python爬虫爬取小麦苗itpub博客的所有文章的连接地址并写入Excel中(2)...
[爬虫]利用Python爬虫爬取小麦苗itpub博客的所有文章的连接地址并写入Excel中(2) 第一篇( http://blog.itpub.net/26736162/viewspace-22865 ...
- python爬虫 爬取小姐姐图片
前言 大致熟悉了python的基础语法以后,开始学习爬虫基础. 一.爬取前的准备工作 python3.7环境(只要是python3版本都可以): 依赖包 : time requests re (缺少包 ...
- python爬虫爬取小姐姐图片(5762张)
接触爬虫的第一天 第一步:现将python环境搭建好,工欲利其事必先利其器! 第二步:寻找目标网站,我选择的网站是http://www.win4000.com,里面有一个美女板块,里面有各种小姐姐的照 ...
- Python爬虫 | 爬取高质量小姐姐照片
Python爬虫 | 爬取高质量小姐姐照片 1.数据来源分析 2.获取author_id_list和img_id 3.制作detial 4.制作detial_list 5.数据保存 6.批量获取 7. ...
- python爬虫爬取微信公众号小程序信息
python爬虫爬取微信公众号小程序信息 爬取内容 某汽车维修信息提供的维修店名称,地点以及电话(手机)号码 爬取步骤 啥也别管,先抓包看看,在这里,博主使用的抓包软件是charles 抓包:将网络传 ...
- python如何爬取网站所有目录_用python爬虫爬取网站的章节目录及其网址
认识爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟 ...
- 四小时学python爬虫爬取信息系列(第一天)
四小时学python爬虫爬取信息系列(第一天)(全是干货) 1.安装requests库(可以在电脑python,我是进入anaconda我建的虚拟环境) anaconda虚拟环境法流程: conda ...
- Python爬虫---爬取腾讯动漫全站漫画
Python爬虫---爬取腾讯动漫全站漫画 操作环境 网页分析 明确目标 提取漫画地址 提取漫画章节地址 提取漫画图片 编写代码 导入需要的模块 获取漫画地址 提取漫画的内容页 提取章节名 获取漫画源 ...
- python怎么模拟浏览器交互_干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏)...
今天为大家带来的内容是:干货分享:python爬虫模拟浏览器的两种方法实例分析(赶紧收藏) 文章主要介绍了python爬虫模拟浏览器的两种方法,结合实例形式分析了Python爬虫模拟浏览器的两种常见操 ...
最新文章
- Android自定义View之仿QQ侧滑菜单实现
- 吴恩达:大数据终将帮助机器拥有自主智慧
- 《玩转微信6.0》一1.2 微信初体验
- mybatis实现自定义SQL并且请求参数是集合
- 解决延迟有 Wi-Fi 6 就够了!
- Heritrix 3.1.0 源码解析(十一)
- 停在Z的危险:用苏斯博士的话,为什么孩子应该编码
- window.btoa()方法;使字符编码成base64的形式
- Ubuntu 想在 Windows 的 WSL 中做到领先
- win10系统崩溃怎么修复_新手怎么重装系统win10
- Django03-视图系统views
- 点击area不出现黑框_黑框淋浴房,黑得高级,黑得漂亮!
- eclipse 主题
- Android之线性布局的4个重要参数
- 北京10万房源压货炒家 新政实施一周无人喝彩
- java发送lrc文件格式_基于java的lrc歌词文件解析工具
- 微信小程序语音搜索功能
- 禁用笔记本自带键盘技巧
- 《罗曼蒂克消亡史》影评
- 【转】网页基础:网页设计(我所知道的所有的html和css代码(含H5和CSS3)),如有错误请批评指正...