在 Phantomjs + selenium 中启用 cookies

2024-03-23

我想登录amazons3(网址:'https://console.aws.amazon.com/iam/home?#security_credential https://console.aws.amazon.com/iam/home?#security_credential')在我的armv7板上。我使用了phantom2.0.1here https://github.com/spfaffly/phantomjs-linux-armv6l和selenium2.45.0。

我可以成功打开网站,但是当我在填写用户名和密码后执行“提交”时,网站跳转到一个错误页面,显示“请启用 Cookies 以继续”。所以我想知道如何在selenium中为phantomjs启用cookie。在我的ubuntu12.04中使用合适版本的phantomjs,我可以成功

我的部分代码如下:

def __init__(self,username,password,login_url,width=1151,height=629):
    self.username = username
    self.password = password
    self.login_url = login_url
    dcap = dict(DesiredCapabilities.PHANTOMJS)  
    dcap["phantomjs.page.settings.userAgent"] = ( "Mozilla/5.0 (Macintosh; Intel Mac OS X) AppleWebKit/534.34 (KHTML, like Gecko) Phantomjs/2.0.1 Safari/534.34" )  
    self.driver = webdriver.PhantomJS(executable_path='/bin/phantomjs',desired_capabilities=dcap,service_args=['--ssl-protocol=any','--ignore-ssl-errors=true'])
    self.driver.set_window_size(width,height)

def _login_system(self):
    try:
        self.driver.get(self.login_url)
        print self.driver.page_source#I can success here
        WebDriverWait(self.driver, 30).until(lambda driver : self.driver.find_element_by_id("ap_email")).send_keys(self.username)
        WebDriverWait(self.driver, 30).until(lambda driver : self.driver.find_element_by_id("ap_password")).send_keys(self.password)
        WebDriverWait(self.driver, 30).until(lambda driver : self.driver.find_element_by_id("signInSubmit-input")).submit()#failed here and showing Please Enable Cookies to Continue

我已经找到答案了 亚马逊似乎不接受“Phantomjs/(..*)”在用户代理中

失败:Mozilla/5.0(Macintosh;Intel Mac OS X)AppleWebKit/534.34(KHTML,如 Gecko)Phantomjs/2.0.1 Safari/534.34

正常:Mozilla/5.0(Macintosh;Intel Mac OS X 10.9;rv:36.0)Gecko/20100101 Firefox/36.0 WebKit

另外,我在用户代理的末尾添加了“WebKit”,因为“未定义不是对象”的问题(https://github.com/detro/ghostdriver/issues/325 https://github.com/detro/ghostdriver/issues/325)

更重要的是,我遇到了“raise BadStatusLine(line)”的问题(如下所示:在此输入链接描述 http://code.google.com/p/selenium/issues/detail?id=6690).也可能是不匹配造成的 selenium 和 phantomjs 的版本不同,所以我使用 phantomjs1.9.8 代替(github 中的piksel/phantomjs-raspberrypi)

对于编译问题,如果要在arm板上编译,最好使用swap来扩展RAM。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Phantomjs + selenium 中启用 cookies 的相关文章

随机推荐

  • 使用自定义字体 pdfmake 进行角度

    我正在关注这个文档 https github com bpampuch pdfmake wiki Custom Fonts client side的自定义字体pdfmake 我无法理解我该如何遵循 Angular 4 的这个例子 因为我的p
  • Clearscript Javascript“需要”功能

    我正在尝试为 Twilio 可编程聊天工具编写 C 包装器 提供的库适用于 JS 客户端 我认为使用像 ClearScript V8 这样的工具可以让我根据需要包装 js 网站上的示例代码是 const Chat require twili
  • 为什么不鼓励接受引用 &String、&Vec 或 &Box 作为函数参数?

    我写了一些 Rust 代码 需要 String作为一个论点 fn awesome greeting name String println Wow you are awesome name 我还编写了接受对 a 的引用的代码Vec or B
  • Gnuplot:将按行和命名的数据绘制为不同颜色和标题的线束

    我正在尝试绘制当前存储的一组图表 我的文件 txt ID01 1 2 3 4 5 ID02 3 4 5 6 7 8 9 ID03 4 3 1 2 3 4 例如 有一行标题为 ID01 仅显示第一行 另一行标题为 ID02 依此类推 如果线条
  • LazyColumn 比垂直滚动的 Column 慢

    我有一个产品单元格 我想在列表中显示 我使用了 LazyColumn 但性能很糟糕 我找不到为什么它这么慢 然后我将 LazyColumn 切换为 Column 突然间滚动变得超级平滑 LazyColumn 版本 LazyColumn it
  • 具有多个环境的 Azure 管道

    My 点网核心应用程序每个环境都有一个 appsettings json 应用程序设置 json and appsettings Development json例如 我想在我的管道中利用这一点 我看到管道有两个选项 Build Artif
  • 使用 Post 数据重定向 URL

    我想使用一些 POST 数据将用户从 page1 重定向到 page2 Page1 和 page2 已打开两个不同的域我可以控制both of them Page 1 我想将字符作为帖子数据提交并重定向到第 2 页 然后第 2 页我想使用
  • Angular 2 - ngOnDestroy 是否在刷新时或仅在离开组件时被调用?

    我想弄清楚 Angular 2 中的 ngOnDestroy 是在刷新时运行还是在有人离开页面时运行 刷新时或当您离开当前页面时 路由除外 然后ngOnDestroy不会被调用 该应用程序将被浏览器销毁 仅当 Angular2 因为您离开或
  • 更改 DotNet 6 入站请求超时

    我需要确保同步请求保持活动状态超过 60 分钟 有没有办法更改 DotNet 6 中的默认入站请求超时 我找到了这个 serverOptions Limits KeepAliveTimeout TimeSpan FromMinutes 60
  • cplex 用于 if-else 语句

    我是 cplex 的新手 在我的 ilp 中 我有几个 if else 语句 我想使用 cplex 使用 java API 来解决我的问题 我不知道如何在 cplex 中制定 if else 例子 if x gt 0 then a 1 el
  • java.lang.IllegalStateException:找不到带有 id_button 的 onClick 处理程序方法

    我想问一下我的项目 我创建了一个类 RestoranView class 它有 3 个按钮 菜单 地图和评级 其中两个 地图和评级 运行良好 但当我单击 菜单 按钮时 它不起作用 并且 logcat 显示了这些错误 我已经实现了相同的代码
  • TypeScript hasOwnProperty 等效项

    在 JavaScript 中 如果我想循环遍历一个字典并设置另一个字典的属性 我会使用如下内容 for let key in dict if obj hasOwnProperty key obj key dict key If obj是一个
  • Python dict.get(k) 即使键存在也不返回任何内容

    可能是我对python的字典理解不太好 但问题就在这里 有没有发生过这样的情况 yolk shell pair exists字典里说eggs but a eggs get yolk 可以返回None 所以 在一个大的代码中 我做了多个get
  • 如何从首选项屏幕打开 AlertDialog?

    我的活动如下 import android app AlertDialog import android content DialogInterface import android content Intent import androi
  • 角度构建错误:TypeError:无法读取未定义的属性“line”

    我突然面临生产构建失败错误 我正在运行这个命令 ng build prod 并出现以下错误 D a 1 s node modules clean css lib reader input source map tracker js 37 i
  • iODBC 在 Mac OSX 10.6.4 下不工作

    我已经通过包 http www iodbc org dataspace iodbc wiki iODBC 安装了 iODBC 并按照此处所述设置所有配置文件 http blog opensteam net past 2009 1 28 ra
  • Redis 批量插入 - 出错

    我正在努力追随Redis 批量插入 Redis http redis io topics mass insert with Redis https hub docker com redis 有点不对劲 root f7ca5eef4a4c r
  • 在 EC2 区域中传播 MongoDB

    我想在多个 Amazon EC2 区域中分发分片 复制的 MongoDB 设置 此流量是否已由 MongoDB 加密 或者我可以选择进行设置吗 或者亚马逊是否在其数据中心之间提供类似 VPN 的特殊连接 我昨天回答了一个关于 Apache
  • Rails UTF-8 响应

    我有一个在 Ruby 1 9 3 上运行的 Rails 3 2 应用程序 它返回存储在 MongoDB 数据库中的 JSON 数据 数据似乎正确存储在 mongo 中 例如 看name属性 id ObjectId 4f986cbe4c808
  • 在 Phantomjs + selenium 中启用 cookies

    我想登录amazons3 网址 https console aws amazon com iam home security credential https console aws amazon com iam home security