小编Ste*_*ead的帖子

网页抓取 - 如何通过Angular.js访问用JavaScript呈现的内容?

我正在尝试从公共站点asx.com.au获取数据

页面http://www.asx.com.au/asx/research/company.do#!/ACB/details包含一个div类"view-content",它包含我需要的信息:

在此输入图像描述

但是当我尝试通过Python查看此页面时urllib2.urlopendiv为空:

import urllib2
from bs4 import BeautifulSoup

url = 'http://www.asx.com.au/asx/research/company.do#!/ACB/details'
page = urllib2.urlopen(url).read()
soup = BeautifulSoup(page, "html.parser")
contentDiv = soup.find("div", {"class": "view-content"})
print(contentDiv)

# the results is an empty div:
# <div class="view-content" ui-view=""></div>
Run Code Online (Sandbox Code Playgroud)

是否可以通过编程方式访问该div的内容?

编辑:根据评论,显示内容通过Angular.js.是否可以通过Python触发该内容的呈现?

python urllib2 beautifulsoup web-scraping angularjs

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

如何在每次编译后清除 Angular CLI 命令行

我在 Windows 10 上使用 Angular CLI 9.0.3,在标准 Windows 命令提示符下运行ng build.

当命令提示符中报告错误时,可能很难确定要滚动到多远才能看到当前编译中的第一个错误。

使用 MacOS 时,可以Command-k在终端运行时用于清除终端,但据我所知,Windows 要求您停止服务,然后用于cls清除命令提示符。

有没有办法在每次应用程序编译时自动清除终端,以便我可以滚动到命令窗口的顶部以查看第一个错误?

terminal command-prompt windows-10 angular-cli

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

这个标签的含义是什么:<t> lorem ipsum </ t>

模板页面http://www.blacktie.co/demo/kelvin包含我以前从未见过的标签:<t>Email</t>

相应的CSS样式: #footwrap t {font-weight: 700;}

我很好奇这个的重要性<t>.它没有列在http://htmldog.com/reference/htmltags或我能找到的其他列表中.

这是自定义HTML标记吗?从我读到的有关自定义元素(例如http://www.html5rocks.com/en/tutorials/webcomponents/customelements)的内容中,您需要调用document.registerElement(),document.createElement()但这似乎并非如此.

此代码在语义上是否正确,还是应该写为:

<span class="t">Email</span>

#footwrap .t {font-weight: 700;}
Run Code Online (Sandbox Code Playgroud)

html css semantic-markup

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

如何确定哪个列涉及"值太长,类型字符变化"?

我使用Python和psycopg以编程方式将数据添加到PostgreSQL表中 - 这很好用.

有时候,包含列的文本值太长,所以我收到消息:

错误:类型字符变化的值太长(1000)

其中数字是违规列的宽度.

有没有办法确定哪个列导致了错误?(除了比较每列的长度,看它是否是1000)

postgresql sql-insert

6
推荐指数
1
解决办法
4230
查看次数

使用纯背景时,“使用“文本字段”需要样式“字形”属性”

根据这个答案,我使用的是纯背景,而不是使用 MapBox 样式

var map = new mapboxgl.Map({
    container: 'map',
    style: {
      version: 8,
      sources: {},
      layers: [
        {
          id: 'background',
          type: 'background',
          paint: {'background-color': 'white'}
        }
      ]
    }
});
Run Code Online (Sandbox Code Playgroud)

我添加了一个GeoJSON点图层并尝试对其进行标记:

'layout': {
  'text-field': ['get', 'name'],
  'text-font': ['Open Sans Semibold', 'Arial Unicode MS Bold'],
},
Run Code Online (Sandbox Code Playgroud)

如果我对地图使用标准 MapBox 样式,则图层会被正确标记。但如果我使用前面提到的空白底图,该图层会返回错误:

使用“文本字段”需要样式“字形”属性

搜索此错误消息表明我需要添加一个glyphs选项:

"glyphs":"mapbox://fonts/mapbox/{fontstack}/{range}.pbf"或者"glyphs":"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"

但是,这些选项都不能阻止错误消息,并且不会标记图层。

glyphs使用空底图时参数的正确语法是什么?

mapbox mapbox-gl-js

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

为什么这个jQuery颜色选择器在Bootstrap模式中失败?

我正在使用http://colpick.com/plugin中出色的jQuery颜色选择器

它在"正常"情况下正常工作,但在Bootstrap 3模式中找到输入父元素时不显示选择器.

这有效:

<div class="container">
  <div class="row">
    <div class="col-md-6">
        <input type="text" id="colorPick1" class="colorPick"/>
    </div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

但Bootstrap模式中的相同内容无法显示选择器:

<div class="modal-body">
    <div class="row">
        <div class="col-md-6">
            <input type="text" id="colorPick2" class="colorPick"/>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

有没有办法在Bootstrap模式中使用这个颜色选择器?

谢谢

javascript css jquery twitter-bootstrap-3

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

Web抓取:根据结果展开/收缩边界框

客户想要知道他们竞争对手商店的位置,所以我是准邪恶的并且在抓住竞争对手的网站.

服务器接受边界框(即,左下角和右上角坐标)作为参数,并返回在边界框内找到的位置.这部分工作正常,我可以成功检索给定边框的商店位置.

问题是返回边界框中的前10个位置 - 因此在填充区域中,10度边界框将返回太多位置:

在此输入图像描述

我总是可以使用较小的边界框,但我正在尝试避免不必要的服务器命中,同时确保返回所有商店.

所以我需要一种方法来减少搜索矩形大小,当找到10个商店(因为可能存在超过10个商店),并递归搜索较小的搜索矩形大小,然后恢复为较大的矩形为下一个网格单元格.

我编写了一个函数,它在给定边界框的情况下从服务器检索存储:

stores = checkForStores(<bounding box>)
if len(stores) >= 10:
  # There are too many stores. Search again with a smaller bounding box
else:
  # Everything is good - process these stores
Run Code Online (Sandbox Code Playgroud)

但我正在努力设置如何为该checkForStores功能设置合适的边界框 .

我尝试使用for纬度和经度上的循环设置主网格单元格:

cellsize = 10
for minLat in range(-40, -10, cellsize):
    for minLng in range(110, 150, cellsize):
        maxLat = minLat + cellsize
        maxLng = minLng + cellsize
Run Code Online (Sandbox Code Playgroud)

...但我不知道如果找到10个商店,如何继续使用较小的边界框进行搜索.我也试过使用while循环,但我不能让它们中的任何一个工作.

感谢您对从哪里开始的任何建议或指示.

python recursion for-loop bounding-box

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

如何调试ElasticBeanstalk错误"X%的请求失败,使用HTTP 5xx"

我的问题类似于AWS:没有任何实例正在发送数据,但是错误消息略有不同.

我有一个在ElasticBeanstalk上运行的Rails应用程序,它似乎正在正常运行.增强型运行状况监控会定期向我发送错误消息,例如:

环境健康已从Ok转变为Degraded.使用HTTP 5xx,20.0%的请求失败.

百分比变化达100%.即使我没有做任何更改,一分钟后我收到一条后续消息,告诉我一切都恢复正常:

环境健康已经从退化转变为好.

我已经从ElasticBeanstalk下载了完整的日志,但我不确切知道在哪里查看(各种目录中有大约20个不同的日志文件).

我目前正在使用具有最小数据库,服务器等实例的免费AWS层.这可能是原因吗?我应该查看哪些日志文件,我应该寻找什么?

logging ruby-on-rails amazon-web-services amazon-elastic-beanstalk

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

使用ElasticSearch的Searchkick返回"Faraday :: ConnectionFailed:execution expired"

我一直在使用带有elasticsearch的searchkick gem,在Rails 4.2.0应用程序上没有任何问题.我有一个使用searchkick的视频模型.

出于某种原因rake searchkick:reindex:all,现在却始终如一地失败:

重新索引视频...耙子中止了!法拉第:: ConnectionFailed:执行过期

我最初安装了elasticsearch via brew install elasticsearch,它返回:

警告:elasticsearch-1.3.4已经安装

我的elasticsearch安装/数据库是否可能已损坏?如果是这样,刷新它的最佳方法是什么?

根据https://www.elastic.co/guide/en/elasticsearch/reference/1.4/indices-delete-index.html我试过,curl -XDELETE 'http://localhost:9200/_all'但这不能解决错误.

当我将此代码部署到AWS时,我的Mac以及Elastic Beanstalk都会出现此问题(两者以前都正常工作).

ruby-on-rails elasticsearch searchkick

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