求助我一直报这个错 不是很懂为什么

来源:6-13 重构封装读取配置文件函数

Akien

2020-01-28

import requests
import json
import time

class SeleniumDriver():
    def __init__(self):
        self.driver = self.chrome_driver()

    def chrome_driver(self):
        url = 'http://127.0.0.1:4444/wd/hub/session/'
        data = json.dumps({
            'desiredCapabilities':{
                'browserName':'chrome'
            }
        })
        res = requests.post(url,data).json()
        session = res['sessionId']
        driver = url + session
        return driver

    def get_url(self,url):
        base_url = self.driver + '/url'
        data = json.dumps({
            'url':url
        })
        requests.post(base_url,data)

    def close_driver(self):
        self.driver.close()

    def find_element_by_id(self,value):
        base_url = self.driver + '/element'
        data = json.dumps({
            'using':'name',
            'value':value
        })
        res = requests.post(base_url,data).json()['value']['element-6066-11e4-a52e-4f735466cecf']
        return res
    def get_element(self,by,value):
        """
        获取元素element
        @parme by 定位方式
        @parme value 定位置
        @return 返回一个元素
        """
        element = None
        #self.driver.find_element_by_name("email")
        #try:
        if by == "id":
            element = self.driver.find_element_by_id(value)
        elif by == "name":
            element = self.driver.find_element_by_name(value)
        elif by == "css":
            element = self.driver.find_element_by_css(value)
        elif by == "class":
            element = self.driver.find_element_by_class(value)
        elif by == "xpath":
            element = self.driver.find_element_by_xpath(value)
        #except:
            #print("定位by和value有问题")
        return element
		#运行代码
	    request_driver.get_url("http://www.imooc.com/user/newlogin")
	    #request_driver.send_value("name","email",1)
	    request_driver.get_element("name","email")
	    request_driver.close_driver()

运行代码报错
AttributeError: ‘str’ object has no attribute ‘find_element_by_name’

写回答

2回答

Mushishi

2020-01-31

你需要先确认你driver是不是driver,现在你driver是一个str

0
0

Mushishi

2020-01-31

你diriver没有传递进来

0
0

助力Python功能测试人员进阶Web自动化测试

轻松转型,快速胜任自动化测试工程师岗位

916 学习 · 607 问题

查看课程