小编ale*_*cxe的帖子

12
推荐指数
1
解决办法
3960
查看次数

Firefox的Webdriver日志

两者ChromePhantomJSselenium驱动程序都可以记录浏览器端的所有内容.通过在初始化驱动程序时指定服务日志路径,您可以控制将日志写入的位置.例如对于chrome(在Python中):

from selenium import webdriver

driver = webdriver.Chrome(service_log_path="/tmp/log")
driver.get("http://www.google.com")
driver.close()
Run Code Online (Sandbox Code Playgroud)

执行代码后,/tmp/log文件将包含有助于调试的服务日志:

[0.985][INFO]: Launching chrome: ...
[2.620][INFO]: RESPONSE InitSession {
   "acceptSslCerts": true,
   "applicationCacheEnabled": false,
   "browserConnectionEnabled": false,
   "browserName": "chrome",
   "chrome": {
      "userDataDir": "/var/folders/yy/ppdg927x4zv8b0rbzg1f_jzh0000gn/T/.org.chromium.Chromium.ibsof9"
   },
   "cssSelectorsEnabled": true,
   "databaseEnabled": false,
   "handlesAlerts": true,
   "javascriptEnabled": true,
   "locationContextEnabled": true,
   "nativeEvents": true,
   "platform": "Mac OS X",
   "rotatable": false,
   "takesHeapSnapshot": true,
   "takesScreenshot": true,
   "version": "37.0.2062.120",
   "webStorageEnabled": true
}
[2.677][INFO]: Waiting for pending navigations...
[2.696][INFO]: Done waiting for pending navigations
[3.290][INFO]: Waiting for pending …
Run Code Online (Sandbox Code Playgroud)

firefox logging selenium google-chrome selenium-webdriver

12
推荐指数
1
解决办法
4883
查看次数

将@author用作代码样式违规

目标:

如果在项目中@author.js文件内的任何位置使用标记,则发出警告.

题:

jshint或其他静态代码检查工具可以帮助吗?如果没有,我有什么选择?

描述:

我完全同意Paul在Javadoc @author标签上的答案标记良好实践主题并将@author标签视为不必要的噪音.

而且,在Python世界中,我看到人们检查标签的使用情况.例如,Openstack Style Guidelines明确声明不使用@author标记.他们开发了一套自定义flake8检查,包括:

[H105] Don’t use author tags.
Run Code Online (Sandbox Code Playgroud)

现在,我正试图在JavaScript中解决同样的问题.

示例(这不应该通过代码质量检查):

/**
 * @author John Smith <john@smith.com>
 */

'use strict';
Run Code Online (Sandbox Code Playgroud)

javascript jslint static-code-analysis jshint eslint

12
推荐指数
3
解决办法
3163
查看次数

如何解决ImportError:无法在Django中导入名称simplejson

我正在尝试在Django(1.7.1)中构建一个实时聊天应用程序.看来我需要安装Redis和ishout.js.所以我按照说明安装了它们.

在Django中创建项目后,我将'drealtime'放在INSTALLED_APPS下,然后放入:

'drealtime.middleware.iShoutCookieMiddleware' 
Run Code Online (Sandbox Code Playgroud)

正上方 :

'django.contrib.sessions.middleware.SessionMiddleware' 
Run Code Online (Sandbox Code Playgroud)

下的MIDDLEWARE_CLASSES,因为它在说什么.我把命令就像

python manage.py startapp example
Run Code Online (Sandbox Code Playgroud)

但我仍然有这个导入错误消息:

Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
    utility.execute()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute
    django.setup()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/__init__.py", line 21, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate
    app_config = AppConfig.create(entry)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/apps/config.py", line 87, in create
    module = import_module(entry)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/drealtime/__init__.py", line 4, in <module>
    from django.utils …
Run Code Online (Sandbox Code Playgroud)

python django json simplejson django-1.7

12
推荐指数
2
解决办法
2万
查看次数

如何在Selenium Webdriver中模拟HTML5拖放?

我使用的是Python 2.7和Selenium 2.44.

我想在Selenium WD中自动执行拖放操作,但根据其他相关帖子,Selenium尚不支持HTML5中的操作.有没有办法在Python中模拟拖放?

这是我试过的代码:

driver = webdriver.Firefox()
driver.get("http://html5demos.com/drag")
target = driver.find_element_by_id("one")
source = driver.find_element_by_id("bin")
actionChains = ActionChains(driver)
actionChains.drag_and_drop(target, source).perform()
Run Code Online (Sandbox Code Playgroud)

它不起作用.

python html5 selenium drag-and-drop selenium-webdriver

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

量角器 - 失败:陈旧元素引用:元素未附加到页面文档

我的量角器e2e页面对象中有一个函数,它从下拉菜单中取消选中几个选项.它以前工作正常,但现在我收到以下错误:

失败:陈旧元素引用:元素未附加到页面文档

我已尝试在for循环的每次迭代中获取元素,但for循环在第一次解析promise之前执行,这意味着x的"limit"值重复传递,测试只是单击相同的下拉列表选择几次.

this.uncheckColumns = function(limit) {
    element(by.className('fa-cog')).click();
    element.all(by.className('multiSelectLi')).then(function(options) {
        for (x = 1; x < limit; x++) {
            options[x].click();
        };
    });
};
Run Code Online (Sandbox Code Playgroud)

javascript selenium jasmine angularjs protractor

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

控制browser.wait()的轮询频率(流利等待)

故事:

在Java selenium语言绑定中有一个FluentWait,它允许严格控制如何检查预期条件:

每个FluentWait实例定义等待条件的最大时间量,以及检查条件的频率.此外,用户可以将等待配置为在等待时忽略特定类型的异常,例如在搜索页面上的元素时的NoSuchElementExceptions.

换句话说,可以更改应用预期条件检查的轮询间隔,默认情况下为500毫秒.另外,可以将异常设置为忽略.

也可以在Python,有相关的poll_frequencyignored_exceptions参数WebDriverWait类.

问题:

在Protractor/WebDriverJS中使用时,是否可以控制验证预期条件的轮询频率browser.wait()


根据browser.wait()文档,只有3个可能的参数:一个函数,它是一个预期的条件,一个超时值和一个可选的超时错误消息.我希望有一个不同的设置或方式来改变轮询频率.

javascript selenium end-to-end selenium-webdriver protractor

12
推荐指数
1
解决办法
1730
查看次数

无法按下按钮

我正在尝试为游戏编写机器人代码,并需要一些帮助来完成它.作为一个完整的菜鸟,我用谷歌搜索了如何使用python并开始阅读有关机械化的内容.

<div class="clearfix">
                    <a href="#" onclick="return Index.submit_login('server_br73');">
            <span class="world_button_active">Mundo 73</span>
        </a>
                    </div>
Run Code Online (Sandbox Code Playgroud)

我的问题是登录,我现在有这个原始代码:

import requests
import requesocks
import xlrd
import socks
import socket
import mechanize
import selenium
from bs4 import BeautifulSoup

# EXCEL
file_location = "/home/luis/Dropbox/Projetos/TW/multisbr.xlsx"
wb = xlrd.open_workbook(file_location)
sheetname = wb.sheet_names ()
sh1 = wb.sheet_by_index(0)

def nickNm():
    lista = [sh1.col_values(0, x) for x in range (sh1.ncols)]
    listaNomes = lista [1]
    x < 1
    print listaNomes
def passwd():
    lista = [sh1.col_values(1, x) for x in range (sh1.ncols)]
    listaPasswd = lista …
Run Code Online (Sandbox Code Playgroud)

python automation mechanize mechanize-python

12
推荐指数
1
解决办法
498
查看次数

.text和.get_text()之间的差异

BeautifulSoup,.text和之间有什么区别.get_text()吗?

获取元素的文本应该首选哪一个?

>>> from bs4 import BeautifulSoup
>>>
>>> html = "<div>text1 <span>text2</span><div>"
>>> soup = BeautifulSoup(html, "html.parser")
>>> div = soup.div
>>> div.text
'text1 text2'
>>> div.get_text()
'text1 text2'
Run Code Online (Sandbox Code Playgroud)

html python beautifulsoup html-parsing

12
推荐指数
1
解决办法
4621
查看次数

量角器片状

我维护一个复杂的Angular(1.5.x)应用程序,使用Protractor(2.5.x)进行E2E测试.我遇到了这种方法的问题,主要表现在测试看起来很脆弱的方式.在一个拉取请求中完美运行的测试在另一个拉取请求中失败.这涉及简单的定位器,例如by.linkTest(...).我调试了失败的测试,应用程序位于正确的页面上,链接存在且可访问.

有没有其他人遇到这些一致性问题?了解原因或解决方法?

selenium automation jasmine protractor jasmine2.0

12
推荐指数
2
解决办法
2730
查看次数