介绍
入坑碧蓝档案已经有半年,每次想发癫又苦于只能上wiki上看立绘。所以就想爬到本地上,再存到手机里,实现发癫自由。
本来是在两年前做过一次爬取bwiki上立绘的爬虫程序的,但现在bwiki的碧蓝档案分区已经删除了全部页面,所以又得重新写。这次爬取的是碧蓝档案wiki这个网站,里面攻略很全,还有设定集和小漫画等资讯。
爬取方式
一开始本想直接使用requests
请求到页面,在用BeautifulSoup
进行解析来获得每个学生详细页面的url。
但很快就发现获取到的页面数据非常少,就明白此处是使用JavaScript动态加载的,原网页是没有这些内容的。于是改用selenium
来模拟浏览器操作,等网页加载好后在通过css选择器获得url。
代码
import requests as req
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import TimeoutException
import time
import urllib.request
import os
base_path='文件夹位置'#下载文件位置
home_url='https://ba.gamekee.com/'
base_url='https:'
extension='.jpg'
driver=webdriver.Edge()#selenium打开edge实例,可以更换为其他已有的浏览器
#下载图片
def downloadImg(url,path,filname):
folder_path=os.path.join(base_path,path)
file_path=os.path.join(