一、selenium基本操作
-
加载网页:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(“http://www.baidu.com/”)
driver.save_screenshot(“百度.png”) -
定位和操作:
driver.find_element_by_id(“kw”).send_keys(“python”)
driver.find_element_by_id(“su”).click() -
查看请求信息:
driver.page_source
driver.get_cookies()
driver.current_url -
退出
driver.close() #退出当前页面
driver.quit() #退出浏览器 -
获取标签中的属性值和标签中的文本
标签.text()
标签.get_attribute(‘属性名’)
注
如果输入框位于frame/iframe表单标签,需要先定位frame/iframe标签,然后转换到表单标签中再定位输入框
二、selenium中验证码的处理
- 手动输入,利用休眠函数等待手动输入
- 利用打码平台自动识别输入(例如:云打码)
案例:selenium爬取网易云音乐中所有歌单的相关内容
import requests
import time
import json
from selenium import webdriver
from selenium.webdriver.common.by import By
class CloudMusic():
def __init__(self):
self.start_url = 'https://music.163.com/#/discover/playlist/?order=hot&cat=%E5%85%A8%E9%83%A8&limit=35&offset=0'
self.driver = webdriver.Firefox() # webdriver类型
def parse_url(self,url):