前言:自学python,第一个想到的就是爬虫。前面用C#做了爬虫,可随意下载全职高手的有声小说的集数(ps:这有声小说在授权应用里收费的)。想写个python 的,python以简洁语法著称,相信代码量不会比用C#实现多。
我用的VS2017为开发工具,装它的时候就把python环境一起安装了。很方便,想要安装包,在VS里工具-Python-Python环境窗口,在 [概述] 框中选择 [包(PyPI)] 输入想要安装的包名字,就会出现 让你选择 pip xxxx 命令安装包。
此次爬虫用到的是selenium,加上webDriver+headless Chrome可模拟谷歌或者火狐浏览器等运行网站,BeautifulSoup抓取网页数据,urllib根据链接下载文件。
这里准备工作麻烦一点的是webDriver的安装,chromedriver.exe下载地址,选择对版本。
对于任何爬虫网站不管它有多复杂,嵌入了多少iframe,总是会有迹可循的。所以这里需要一点点技巧,找到想要的关键链接。爬虫网站:有声听书吧(人家改了域名,改了运行规则,那可就没招了,据我所研究这个网站经常变域名)。 这网站很多乱入广告,资源每一集的链接都不一样,其真正的播放资源就在这些网页中,这里我只做了爬取 全职高手有声小说的资源。另外最后用Pyinstaller将其打包成exe了。
直接上代码吧:
# -*- coding: utf-8 -*-
from selenium import webdriver
from bs4 import BeautifulSoup
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.wait import WebDriverWait
from s