python爬虫课程笔记-续

selenium的内容真杂,代码超多,周日搞了半天才把2小时的课程搞完

from selenium import webdriver
from selenium.webdriver.common.by import By
#加载驱动
driver=webdriver.Chrome(executable_path=‘D:\Program Files\PyCharm Community Edition 2020.1.2\chromedriver.exe’)
driver.get(‘https://www.baidu.com’)
#通过ID来找
#driver.find_element_by_id(‘kw’)
#driver.find_element_by_id(‘kw’).send_keys(‘python’)
#driver.find_element(By.ID,‘kw’).send_keys(‘java’)

#2 通过class name
#driver.find_element_by_class_name(‘s_ipt’).send_keys(‘jerry’)
#driver.find_element(By.CLASS_NAME,‘s_ipt’).send_keys(‘beauty’)

#3 通过name属性
#driver.find_element_by_name(‘wd’).send_keys(‘chen’)
#driver.find_element(By.NAME,‘wd’).send_keys(‘jiuzhe’)

head=driver.find_element_by_tag_name(‘head’) #通过标签名字定位,用的少,因为重复多

print(head)

#通过Xpath来定位
#driver.find_element_by_xpath(’//input[@id=“kw”]’).send_keys(‘beauty’) # 注意id=“kw” 必须为双引号,和源代码 保持一致

driver.find_element_by_xpath(’//*[@id=“kw”]’).send_keys(‘hao’)

#通过css选择器来定位
#driver.find_element_by_css_selector(’.s_ipt’).send_keys(‘warren’)

inputTag=driver.find_elements_by_tag_name(‘input’)
print(len(inputTag))

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
#加载驱动
driver=webdriver.Chrome(executable_path=‘D:\Program Files\PyCharm Community Edition 2020.1.2\chromedriver.exe’)
driver.get(‘https://www.baidu.com’)

百度一下是一个input 标签,所以可用:

#driver.find_element_by_id(‘su’).send_keys(‘pyhton’)
#但是不工作

#wrapper不是一个input,是div所以报错
#driver.find_element_by_id(‘wrapper’).send_keys(‘pyhton’)

inputTag=driver.find_element_by_id(‘kw’)
inputTag.send_keys(‘beauty’)

time.sleep(2)

inputTag.clear()

inputTag2=driver.find_element_by_id(‘su’)
inputTag2.click()

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.support.ui import Select
#加载驱动
driver=webdriver.Chrome(executable_path=‘D:\Program Files\PyCharm Community Edition 2020.1.2\chromedriver.exe’)

driver.get(‘https://www.17sucai.com/pins/demo-show?id=5926’)

#selectTag=driver.find_element_by_class_name(‘nojs’)

#1 选择方式,根据值
#selectTag.select_by_value(‘jp’) 报错,因为有iframe的嵌套,所以找不到,需要先切换到iframe
#切换iframe
driver.switch_to_frame(driver.find_element_by_id(‘iframe’))
selectTag=Select(driver.find_element_by_class_name(‘nojs’))
#selectTag=driver.find_element_by_class_name(‘nojs’)
#selectTag.select_by_value(‘JP’) #没有select_by_value, 需要创建
#2 根据索引值来选择
selectTag.select_by_index(3)

#操作非select标签

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.support.ui import Select
#加载驱动
driver=webdriver.Chrome(executable_path=‘D:\Program Files\PyCharm Community Edition 2020.1.2\chromedriver.exe’)

driver.get(‘https://www.17sucai.com/pins/demo-show?id=5926’)
#切换iframe
#driver.switch_to_frame(driver.find_element_by_id(‘iframe’))
driver.switch_to.frame(driver.find_element_by_id(‘iframe’))
#selectTag=Select(driver.find_element_by_id(‘dk_container_country-nofake’)) select 没有div,这样不行,所以试试
divTag=driver.find_element_by_id(‘dk_container_country-nofake’).click()
#select by index 和select by value都不行
key = int(input(‘请输入:’))

if key == 1:
driver.find_element_by_xpath(’//[@id=“dk_container_country-nofake”]/div/ul/li[2]/a’).click()
elif key == 2:
driver.find_element_by_xpath(’//
[@id=“dk_container_country-nofake”]/div/ul/li[3]/a’).click()
#模拟登陆豆瓣

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.support.ui import Select
#加载驱动
driver=webdriver.Chrome(executable_path=‘D:\Program Files\PyCharm Community Edition 2020.1.2\chromedriver.exe’)

driver.get(‘https://www.douban.com/’)

#找到并且切换iframe
login_iframe = driver.find_element_by_xpath(’//div[@class=“login”]/iframe’)
driver.switch_to.frame(login_iframe

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值