小编Ana*_*ist的帖子

将现有的Webdriver对象传递给Robot Framework的自定义Python库

我正在尝试为Robot Framework创建一个自定义Python库,但我是Python和Robot的新手,我不知道如何完成我想要做的事情.我想将使用Selenium2Library创建的Robot的Webdriver对象传递给我的自定义Python库,以便我可以使用Webdriver的方法,例如find_element_by_id.我已经看到了一些关于如何在这里这里做的建议,但它们是针对Java库的 - 我找不到任何Python指令.

我将如何在Python中执行此操作?或者我想以不同方式执行此操作而不传递Webdriver对象?

python robotframework selenium-webdriver

14
推荐指数
1
解决办法
1万
查看次数

通过virtualenv使用脚本时出现致命错误 - python.exe周围的额外引号

我是Python的新手,最近在Windows上安装了Python 2.7.6 x86.我试图通过virtualenv创建一个环境.我安装了Python,然后在全局安装了pip和virtualenv.然后我CD到我想要创建环境的目录并运行virtualenv env.然后我用它激活它env\scripts\activate.现在,当我尝试通过virtualenv(pip,easy_install等)运行任何脚本时,我收到以下错误:

Fatal error in launcher: Unable to create process using
'""[dir]\env\Scripts\python.exe"" "[dir]\env\Scripts\pip.exe" --version'
Run Code Online (Sandbox Code Playgroud)

注意python exe周围的额外引号.它有两组引号,而不只是一组.

我有一种感觉,这是一个路径错误.该路径在activate.bat中设置,但看起来正确 - set "VIRTUAL_ENV=[dir]\env"

让我重申,脚本在全球范围内运作良好.我只是在virtualenv中看到这个错误.

那些额外的引号来自哪里?我怎么能摆脱它?

python virtualenv python-2.7

10
推荐指数
2
解决办法
7947
查看次数

如何设置.sublimelinterrc来忽略pep8错误

我正在使用Sublime Text 3,我正在尝试在全局(用户首选项)级别之外自定义SublimeLinter-pep8.我有一个文件中有很多标签,所以错误W191显示了很多.作为测试,我想忽略这个错误.如果我"ignore": "W191"向SublimeLinter.sublime-settings文件添加一个,则忽略该错误.如果我将其添加到设置堆栈中用户级别以上的任何位置,则不会忽略该错误.

这是我的SublimeLinter.sublime-settings文件的linting部分.如果我将"W191"添加到"忽略"部分,那么这是唯一一次错误将被linter忽略.此外,我注意到了"max-line-length": null,但我仍然遇到最大行长错误,因此除了我在这个问题中提出的要求之外,可能还有其他内容.

    "lint_mode": "background",
    "linters": {
        "pep8": {
            "@disable": false,
            "args": [],
            "excludes": [],
            "ignore": "",
            "max-line-length": null,
            "select": ""
        }
    },
Run Code Online (Sandbox Code Playgroud)

这是我的.sublimelinterrc文件的全部内容.我把它放在我的.py文件的父文件夹中(我也尝试将它放在同一个文件夹中).它没有做任何事情.

{
    "SublimeLinter":
    {
        "@python": 2.7,
        "linters":
        {
            "pep8":
            {
                "ignore": "W191"
            }
        }
    }   
}
Run Code Online (Sandbox Code Playgroud)

我也尝试在.py文件的开头添加这个内联语句.它也没有做任何事情. # [SublimeLinter pep8-ignore:+W191]

我也搞乱了Project设置,但是我不确定Sublime Text中的项目是如何工作的所以我不确定我是否看到了同样的问题,或者我只是设置错了.

调试模式不会显示有关pep8的任何警告或错误,并且每次修改任何这些文件时它都会可靠地重新发送.如果可能的话,我想使用.sublimelinterrc,这就是我主要关注的内容.我错过了什么?有一个我忽略的环境吗?我把文件放在错误的目录或什么的?

pep8 sublimelinter sublimetext3

5
推荐指数
0
解决办法
1053
查看次数

使用document.querySelectorAll获取CasperJS的textContent

我正在使用CasperJS自动填写在线表格.每当您尝试提交填写了包含无效数据的任何必填字段的表单时,每个包含无效数据的字段都会显示一条错误消息,提醒您问题所在.我想收集所有这些消息并将它们连接成一个 - 无论是通过数组还是其他方法对我来说都无关紧要.错误消息的CSS如下所示:

<span class="field-validation-error" data-valmsg-replace="true" data-valmsg-for="Name.Last">
    <span class="" for="Name_Last" generated="true">
        The Last Name field is required.
    </span>
</span>
Run Code Online (Sandbox Code Playgroud)

<span class="field-validation-error" data-valmsg-replace="true" data-valmsg-for="Address.City">
    <span class="" for="Address_City" generated="true">
        The City field is required.
    </span>
</span>
Run Code Online (Sandbox Code Playgroud)

在浏览器控制台中,我成功地做到了这一点:

var arr = document.querySelectorAll('.field-validation-error');
for (var i = 0; i < arr.length; i++) { 
    var err = arr[i]; console.log(err.textContent);
}
Run Code Online (Sandbox Code Playgroud)

它让我回复:

"The Last Name field is required."
"The City field is required."
Run Code Online (Sandbox Code Playgroud)

我打算在CasperJS中做同样的事情,但我无法得到相同的结果.这是我的代码到目前为止(一个更大的文件的片段,所以我不会发布我casper.start或任何东西):

var results = self.evaluate(function() {
    var arr =  document.querySelectorAll('.field-validation-error');
    return …
Run Code Online (Sandbox Code Playgroud)

javascript selectors-api phantomjs casperjs

3
推荐指数
1
解决办法
3816
查看次数