写在前面
Python Selenium可以做网络爬虫。所以,我们可以从网页源码中爬出想要的信息。
Selenium的page_source方法可以获取到页面源码。获取到源码以后可以再查找自己想要的信息。
源码保存
为了方便查看网页源码,我们可以借用python提供的方法,将获取到的网页源码写入到html文件中。
代码语言:javascript复制#get_source.py
#www.testclass.cn
#Altumn
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.testclass.cn/")
driver.maximize_window()
driver.implicitly_wait(10)
page = driver.page_source
#打印源码,防止乱码加上编码格式;
print(page.encode("utf8"))
#保存网页源码名称为:testclass_cn.html,存储路径为工程根目录;
f=open('./testclass_cn.html',mode="w",encoding="utf-8")
f.write(page)
存储的网页效果(局部截图):
源码操作
成功获取源码以后,我们可以在源码中继续查找想要的信息。
例如,我想要获取该页面上所有关于‘.html’链接的信息。或者我们把抓取的URL集保存到本地文档中。
代码语言:javascript复制#get_source.py
#www.testclass.cn
#Altumn
from selenium import webdriver
import re
driver = webdriver.Chrome()
driver.get("https://www.testclass.cn/")
driver.maximize_window()
driver.implicitly_wait(10)
page = driver.page_source
#用正则表达式匹配URL集;
url_list = re.findall('href="(.*?)"', page, re.S)
#打印出含有".html"的URL集
for url in url_list:
if ".html" in url:
print(url)
#存储获取到的URL到data.txt;
with open('data.txt','w') as f:
for url in url_list:
f.write(url 'n')
上面主要介绍了Selenium获取网页源码的基本操作方法,如果想要精通爬虫,需要掌握一门语言如python,然后熟悉使用正则表达式,了解网页html结构等一大箩筐技能。