小编sim*_*sen的帖子

使用Phantomjs的Python Selenium - 单击失败:ReferenceError:无法找到变量

我正在使用selenium webdriver编写一个python脚本来从网站获取一些数据,我试图点击这个网页中的下一个按钮.定义按钮的位置:

<a id="ctl00_FullRegion_npsGridView_lnkNext" class="nextCol" href="javascript:__doPostBack('ctl00$FullRegion$npsGridView$lnkNext','')">Next</a>
Run Code Online (Sandbox Code Playgroud)

在python中使用以下代码

URL='http://www.nordpoolspot.com/Market-data1/Elspot/Area-Prices/ALL1/Hourly/'
nextId="ctl00_FullRegion_npsGridView_lnkNext"
browser=webdriver.PhantomJS('./phantomjs')
browser.get(URL)
nextBtn=browser.find_element_by_id(nextId)
time.sleep(5)
nextBtn.click()
Run Code Online (Sandbox Code Playgroud)

这在使用Firefox或Chrome Webdriver时效果很好但是使用Phantomjs我收到以下错误.

selenium.common.exceptions.WebDriverException: Message: u'Error Message => \'Click          
failed: ReferenceError: Can\'t find variable: __doPostBack\'\n caused by Request
Run Code Online (Sandbox Code Playgroud)

这个错误出现在很多谷歌搜索中,但是在使用phantomjs时havnt确实找到了修复它的方法.

python phantomjs selenium-webdriver

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

在Google Charts中将日期时间数据更改为24小时格式

我正在使用Google Charts API使用javascript绘制数据.datetime数据视图的默认格式是12小时上午/下午格式.如何更改视图以显示24小时格式?代码示例如下所示,其中使用了默认的日期时间格式:

var price_data = new google.visualization.DataTable();
         price_data.addColumn('datetime','Time');
         price_data.addColumn('number','Price [øre/KWh]');

price_data.add_row([new Date(2013,23,3,4,5),3])
price_data.add_row([new Date(2013,1,5,4,5),9])

var options = {
      title: 'Price'
    };

var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
Run Code Online (Sandbox Code Playgroud)

javascript google-visualization datetime-format

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

Circe - 解码/编码json时在case类中使用默认字段

可以说我有这个案例类:

case class Foo(bar: String, baz: Boolean = false)

在使用akka-http-json解码/编码API请求/响应时使用

在类似于的示例中:

import akka.actor.ActorSystem
import akka.http.scaladsl.Http
import akka.http.scaladsl.server.Directives
import akka.stream.{ ActorMaterializer, Materializer }
import scala.io.StdIn

object ExampleApp {

  private final case class Foo(bar: String, baz: Boolean = false)

  def main(args: Array[String]): Unit = {
    implicit val system = ActorSystem()
    implicit val mat    = ActorMaterializer()

    Http().bindAndHandle(route, "127.0.0.1", 8000)

    StdIn.readLine("Hit ENTER to exit")
    system.terminate()
  }

  private def route(implicit mat: Materializer) = {
    import Directives._
    import FailFastCirceSupport._
    import io.circe.generic.auto._

    pathSingleSlash …
Run Code Online (Sandbox Code Playgroud)

scala akka-http circe

8
推荐指数
1
解决办法
2133
查看次数

在CircleCI中缓存Docker镜像

我正在使用CircleCI来运行测试并部署Docker镜像,但是我无法缓存Docker镜像,导致构建时间非常长.

这是一个不起作用的最小例子:

circle.yml

machine:
   services:
      - docker

dependencies:
    cache_directories:
      - "~/docker"
    override:
      - if [[ -e ~/docker/image.tar ]]; then echo "cached files exists!" ; docker load -i ~/docker/image.tar; fi
      - docker images
      - docker build -t myorg/myapp:v1.1.1 .
      - mkdir -p ~/docker; docker save myorg/myapp:v1.1.1 > ~/docker/image.tar
Run Code Online (Sandbox Code Playgroud)

Dockerfile:

FROM debian:latest
MAINTAINER My Name <myname@gmail.com>
RUN apt-get update && apt-get install -y vim
CMD ["sleep", "3"]
Run Code Online (Sandbox Code Playgroud)

当推送到GitHub时,构建在CircleCI中运行良好.但每次运行时都会重建Docker镜像.这在生产Docker镜像中非常耗时.

文件image.tar明显加载,从docker images命令输出中可以清楚地看到,但它仍然每次构建总图像,即使Dockerfile没有改变.

这是该行的一些输出 docker build -t myorg/myapp:v1.1.1 .

docker build -t myorg/myapp:v1.1.1 …
Run Code Online (Sandbox Code Playgroud)

docker circleci

5
推荐指数
1
解决办法
1018
查看次数

身份验证插件'caching_sha2_password'无法在circleci/mysql中加载

我最近在CircleCi 2中测试代码时遇到了问题.我们的config.yml部分:

jobs:
  build:
    environment:
    docker:
      ...
      - image: circleci/mysql
      - image: rabbitmq:3-alpine
    working_directory: ~/webapp

    steps:
      ...
      - run:
          name: Prepare DB
          command: echo "create database" | mysql --host 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

构建失败Prepare DB

ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: Error loading shared library /usr/lib/mysql/plugin/caching_sha2_password.so: No such file or directory Exited with code 1

此错误现在只发生,并且没有对circle/mysql设置进行任何更改.

例如/sf/answers/3496123781/指定可以设置--default-authentication-plugin=mysql_native_password标志,但不确定这是否适用,或者如何在圆圈ci设置中应用它.

mysql circleci mysql-8.0 circleci-2.0

4
推荐指数
1
解决办法
8745
查看次数

更改“选择”组件的边框和箭头图标“材质”用户界面的颜色

我正在尝试在深色背景上使用Material UI Select组件:

在此处输入图片说明

但是我无法将下拉图标和下划线边框的颜色更改为白色。我已经看过使用类覆盖样式,并且可以通过以下方式更改颜色:

const styles = theme => {
    root: {
       borderBottom: '1px solid white',
    },
    icon: {
       fill: 'white',
    },
}

class MyComponent extends React.Component {

    render() {
        const {classes} = this.props;
        return (
            <Select
                value={this.props.value}
                inputProps={{
                    classes: {
                        root: classes.border,
                        icon: classes.icon,
                    },
                }}
            >
                <MenuItem
                    value={this.props.value}
                >
                    Foo
                </MenuItem>
            </Select>   
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当选择组件处于焦点状态时,我似乎无法设置下划线的颜色,即使用上述代码,我得到了白色下划线和图标,但是当焦点位于组件上时,下划线保持黑色。

css reactjs material-ui

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