• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
带着兔子去拔牙
博客园    首页    新随笔    联系   管理    订阅  订阅

pyse

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


class Pyse():
def __init__(self,b ='chrome'):
if b == 'chrome':
self.driver = webdriver.Chrome()
elif b == 'ff':
self.driver = webdriver.Firefox()
else:
print('传递参数有误')

def open(self, url):
self.driver.get(url)

def wait_element(self, css, timeout=10, poll=0.5):
by = css.split('=>')[0]
value = css.split('=>')[1]
if by == By.ID:
WebDriverWait(self.driver, timeout, poll).until(EC.presence_of_element_located((By.ID, value)))
elif by == By.CSS_SELECTOR:
WebDriverWait(self.driver, timeout, poll).until(EC.presence_of_element_located((By.CSS_SELECTOR, value)))
else:
print('参数错误')

def get_element(self, css):
'''

:param css: id=>i1
:return:
'''


by = css.split('=>')[0]
value = css.split('=>')[1]

if by == By.ID:
element = self.driver.find_element_by_id(value)
elif by == By.CLASS_NAME:
element = self.driver.find_element_by_class_name(value)
elif by == By.CSS_SELECTOR:
element = self.driver.find_element_by_css_selector(value)
elif by == By.LINK_TEXT:
element = self.driver.find_element_by_link_text(value)
else:
print('传递参数异常')
return element

def type(self, css, value):
element = self.get_element(css)
element.send_keys(value)


if __name__ == '__main__':
pyse = Pyse()
pyse.open('https://www.baidu.com/')
pyse.type('id=>i1', 123123)
posted @ 2022-04-29 17:09  带着兔子去拔牙  阅读(67)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3