小编Sim*_*mon的帖子

使用Streaming API避免使用420s?

我有一个python脚本,使用基本身份验证和使用tweetstream模块挂钩到Twitter Streaming API.

我每分钟收集10条推文.
我正在断断续续地断开连接,因此目前正在记录它们发生的频率.

我一直在达到我的速率限制并获得420个HTTP错误.

我知道,对于搜索API,您可以使用OAuth身份验证获得更高的配额.对于流媒体,我找不到任何关于基本和OAuth之间的速率限制差异的参考.无论如何,看起来我正在使用的python Tweetstream不支持使用流API.

我注意到TweetstreamRuby版本支持OAuth,但我正在做这个项目作为python的学习经验.

从阅读Twitter帮助,它谈到'退避战略'并提到:

如果收到HTTP 420响应,则必须停止几分钟的进一步连接尝试.

我不再收到错误,但一直试图在我的代码中制定更好的逻辑,以避免永久性地获得这些错误.

我目前的提议如下,在尝试重新连接之前现在等待200秒.

while True:
    try:
        with tweetstream.FilterStream(uname, passwd, locations=extent) as stream:
            # do stuff
    except tweetstream.ConnectionError as e:
     print e.message + " time: " + datetime.now
     time.sleep(200)
     pass
    except tweetstream.AuthenticationError as e:
     now = datetime.datetime.now()
     print e.message  + " time: " + str(now)
     pass
Run Code Online (Sandbox Code Playgroud)

我的问题是 - 这是一个很好的方式来绕过接收来自Twitter的420错误?那些更熟悉Twitter API的人,你能推荐一种方法吗?

python twitter tweetstream twitter-streaming-api

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

根据我的要求,我应该使用NSIS或jprofiler/install4j

我们有一个Web应用程序,我们需要为客户更轻松地部署它们.新安装的当前工作流程:

  • 确保机器上有JRE(32或64位)
  • 安装Tomcat(32或64位)
  • 在Oracle或SQL Server中创建数据库(我们为此提供SQL脚本)
  • 将一些值写入我们的设置表,如主机名.(可以让用户验证这些,但不希望用户必须点击它们.
  • 创建一个连接属性文件(我们提供一个迷你JAR应用程序来帮助解决这个问题),它将位于Tomcat下.
  • 我们的实际Web应用程序有两个WAR文件.这些可以分为两台机器,但是现在,我们假设它们都被转储到Tomcat下.
  • 启动Tomcat以便它部署WAR

这对我们的用户来说是一个繁琐的过程,我想将它封装到一个安装程序中,并且一直在NSIS中看到这样做,这似乎有一个庞大的社区,但后来偶然发现了install4j,虽然看起来鲜为人知,但更多特定于基于java的应用程序.

只是想从更多经验丰富的用户那里得到一些平台上最佳选择的反馈.

我不想半途而废,然后意识到我选择了错误的安装平台.

nsis jprofiler install4j

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

将WAR部署到正确的WebApps文件夹

我正在编写我的第一个NSIS脚本,并享受学习曲线.

该应用已经:

  • 检查机器是否为64位,如果是32位则中止.
  • 查找JRE并在未找到时安装一个JRE.
  • 使用捆绑的安装程序安装Apache Tomcat 7.

    ExecWait'"$ PLUGINSDIR\apache-tomcat-7.0.19_x64.exe"'

在这个单独的安装程序中,用户可以选择与默认位置不同的位置来安装Tomcat.

另一个Tomcat也可能已存在于同一台机器上,并且它们使用不同的端口号安装第二个实例.

我查看了其他一些示例,但是他们通过将zip版本解压缩到特定文件夹来安装Tomcat.
认为这是运行TC7 exe安装程序的更好方法.当我们需要将它更换为更新的版本时,也会使生活更轻松.

所以,我的问题是:保留他们刚刚安装Tomcat的路径的最佳方法什么,以便我可以从Tomcat安装程序中获取它并在我的NSIS脚本中使用它来部署WAR文件?

我希望找到一个系统变量,但看不到任何.

tomcat nsis

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

将GeoJSON加入另一个GeoJSON

我有一些地理边界,我有一个GeoJSON端点.

我还有一些变量存储在一个单独的GeoJSON端点上,该端点没有坐标,但确实有一个变量,我想稍后在主题上为地图设置样式,稍后再使用D3.这是每周更新.

我在尝试加入的两个响应中都有一个名为lga_name(本地政府区域名称)的公共ID.似乎有很多关于如何将GeoJSON与CSV连接的示例,而不是GeoJSON与GeoJSON的连接.

我试图整理一个应用程序,但仍然在努力加入.

// Load LGAs from ArcGIS Online (The GeoJSON with geoms)
d3.json("the url to the Geoms", function(error, data) {

// Load Crash Stats from ArcGIS Online (the total persons involved, summarised down to LGA names)
d3.json("the url to the table", function(error, data2) {

        var lga = data.features;
        var crashStats = data2.features;

        // Not working
        var joined =  lga.forEach(function(item) {
            item.properties.LGA_NAME = crashStats[item.properties.lga_name];
        });
Run Code Online (Sandbox Code Playgroud)

谁能给我一些帮助让我感动的指示?只是想了解更多关于D3和Javascript的信息.

javascript esri geospatial geojson d3.js

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

工作日重新订购熊猫系列

使用Pandas,我已经输入了一个CSV文件然后创建了一系列数据,以找出一周中哪些日子崩溃最多:

crashes_by_day = bc['DAY_OF_WEEK'].value_counts()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

然后我将其绘制出来,但当然它将它们按照与系列相同的排序顺序绘制.

crashes_by_day.plot(kind='bar')
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

将这些重新排名为Mon,Tue,Wed,Thur,Fri,Sat,Sun的最有效方法是什么?

我是否必须将其分解为列表?谢谢.

python python-2.7 pandas anaconda

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

StageDisplayState不允许全屏模式

有一个父Flex应用程序,允许您在其中嵌入自定义工具(SWF文件).

我检查了父包装的HTML包装器,它使用SWFObject,并允许全屏:

<param name="allowFullScreen" value="true" />
<param name="allowFullScreen" value="true" />
Run Code Online (Sandbox Code Playgroud)

我正在尝试将一个简单地将父应用程序带到全屏模式的工具.

在此输入图像描述

这是代码的简化版本.我尝试 了几种 变化,但仍然没有运气.

public function toogleScreen():void
{
 // this is fired from a function within the child swf
  if (this.stage.displayState == StageDisplayState.FULL_SCREEN)
   this.stage.displayState=StageDisplayState.NORMAL;
 else
   this.stage.displayState=StageDisplayState.FULL_SCREEN;
}
Run Code Online (Sandbox Code Playgroud)

单步执行代码可识别问题:

SecurityError: Error #2152: Full screen mode is not allowed.
at flash.display::Stage/set_displayState()
at flash.display::Stage/set displayState()
at ExampleCustomTools.FullScreen::fullscreen/toogleScreen()[C:\Users\Simon\Adobe Flash Builder 4\DekhoSimulator_Viewshed\src\ExampleCustomTools\FullScreen\fullscreen.mxml:53]
at ExampleCustomTools.FullScreen::fullscreen/init()[C:\Users\Simon\Adobe Flash Builder 4\DekhoSimulator_Viewshed\src\ExampleCustomTools\FullScreen\fullscreen.mxml:40]
at ExampleCustomTools.FullScreen::fullscreen/___fullscreen_Module1_creationComplete()[C:\Users\Simon\Adobe Flash Builder 4\DekhoSimulator_Viewshed\src\ExampleCustomTools\FullScreen\fullscreen.mxml:7]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[E:\dev\hero_private_beta\frameworks\projects\framework\src\mx\core\UIComponent.as:12977]
at mx.core::UIComponent/set initialized()[E:\dev\hero_private_beta\frameworks\projects\framework\src\mx\core\UIComponent.as:1757]
at mx.managers::LayoutManager/doPhasedInstantiation()[E:\dev\hero_private_beta\frameworks\projects\framework\src\mx\managers\LayoutManager.as:819] …
Run Code Online (Sandbox Code Playgroud)

apache-flex fullscreen actionscript-3

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

在Dojo Chart中填充单个条形图的颜色?

这可能是相当简单的Q(用Dojo学习绳索).

我已经在我的网络应用程序中成功创建了条形图.

// Create Chart
var chartDiv = dojo.create("div");
dijit.byId("someDiv").setContent(chartDiv);
var chart1 = dojox.charting.Chart2D(chartDiv);

chart1.addPlot("default", {
    type: "Bars",
    gap: 3
});
chart1.addAxis("x");
chart1.addAxis("y", {
    vertical: true,
    labels: [{
        value: 1,
        text: "Field1"
    }, {
        value: 2,
        text: "Field2"
    }]
});
chart1.addSeries("MyData", [var1, var2]);
chart1.render();
Run Code Online (Sandbox Code Playgroud)

我看到您可以为图表创建自定义主题.但是,我认为必须有一种更简单的方法来为我的每个条形定义颜色(理想情况下是一个微妙的渐变).我也被限制使用由Esri提供的dojo版本,并且不确定是否允许我创建cutom主题.

将只有5个栏(上面的代码段中有2个).

即我想为每个酒吧定义不同的颜色.

有人能让我摆脱困境并提供一些如何实现这一目标的指导吗?

javascript dojo dojox.charting

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

检测重复项并创建汇总行

我有一个常规的传入CSV,看起来像这样(简化):

Published   Station         TypeFuel    Price
1/09/2015   BP Seaford      ULP         129.9
1/09/2015   BP Seaford      Diesel      133.9
1/09/2015   BP Seaford      Gas         156.9
1/09/2015   Shell Newhaven  ULP         139.9
1/09/2015   Shell Newhaven  Diesel      150.9
1/09/2015   7-Eleven Malaga ULP         135.9
1/09/2015   7-Eleven Malaga Diesel      155.9
2/10/2015   BP Seaford      ULP         138.9
2/10/2015   BP Seaford      Diesel      133.6
2/10/2015   BP Seaford      Gas         157.9
Run Code Online (Sandbox Code Playgroud)

......隐藏了更多行.看着大约200个站,每天报告20-30天.

我需要总结一下,看起来像这样:

Published   Station         ULP     Diesel  Gas
1/09/2015   BP Seaford      129.9   133.9   156.9
1/09/2015   Shell Newhaven  139.9   150.9   
1/09/2015   7-Eleven Malaga 135.9   155.9   
2/09/2015   BP …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

来自Sharrre的Google+ Count失踪

一个月前在IIS7上设置了一个基本的Javascript应用程序.我利用Sharrre jquery插件为它添加了一些社交媒体按钮.

几个月他们看起来像预期的那样:
编辑 下面的截图不是来自我的网站,因为我没有屏幕抓取它的工作时间.您可以通过此图像看到它的工作原理.

在此输入图像描述

但是,我注意到在过去几周内,无论浏览器和空缓存如何,它都无法正确显示:

在此输入图像描述

我没有对代码进行任何更改,所以寻找一些建议来解决这个问题?

我能想到的可能是因为有更多人分享它,这个数字导致气球以某种方式移动到其他地方或消失了?我无法在Firebug中看到任何相关的错误,我不相信IIS已经在服务器端摆弄.

css jquery social-media google-plus

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

无法导入名称find_packages?

这可能是一个菜鸟错误,但我在学习python的早期阶段.

  • 运行Win7 64bit
  • Python是2.7.2 64位,python从CMD提示运行良好.
  • 我下载了TweetStream.及其下c:/
  • 在pyscripter中打开setup.py.
  • 执行它,我收到此错误:

在此输入图像描述

不太清楚我做错了什么,或者如何纠正这个问题.
这是一个简短的截屏视频,如果它再流光了.

编辑 - 回应评论.

c:\tweetstream-1.1.1>python setup.cfg install
  File "setup.cfg", line 2
    tag_build =
               ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

python python-2.7 tweetstream

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

如何点火YesNo Alert Box?

这是非常基本的,那里有样品,但我仍在努力.

我需要使用是/否选项发出警报.
我需要在动作中做到这一点.

Alert.show("Open new tab to search in Google Maps?",
"No places found", Alert.YES | Alert.NO, this, alertListener, null, Alert.NO);

function alertListener(eventObj:CloseEvent):void {

   if (eventObj.detail==Alert.YES) {
    Alert.show("You clicked yes"); 
    }
}
Run Code Online (Sandbox Code Playgroud)

这将返回flash调试播放器的异常:

TypeError: Error #1034: Type Coercion failed: cannot convert mx.rpc::AsyncResponder@e31c601 to flash.display.Sprite.
    at Function/ExampleCustomTools.Locator:locator/private:doFind/ExampleCustomTools.Locator:onResult()[C:\Users\sjackson\Adobe Flash Builder 4\DekhoSimulator_Profiler\src\ExampleCustomTools\Locator\locator.mxml:142]
    at mx.rpc::AsyncResponder/result()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\AsyncResponder.as:95]
    at com.esri.ags.tasks::Locator/handleAddressCandidates()[C:\checkout\flex_api2\api\src\com\esri\ags\tasks\Locator.as:187]
    at Function/http://adobe.com/AS3/2006/builtin::call()
    at com.esri.ags.tasks::BaseTask/handleResult()[C:\checkout\flex_api2\api\src\com\esri\ags\tasks\BaseTask.as:667]
    at Function/com.esri.ags.tasks:BaseTask/esri_internal:sendURLVariables2/com.esri.ags.tasks:result()[C:\checkout\flex_api2\api\src\com\esri\ags\tasks\BaseTask.as:604]
    at mx.rpc::Responder/result()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\Responder.as:56]
    at mx.rpc::AsyncToken/http://www.adobe.com/2006/flex/mx/internal::applyResult()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\AsyncToken.as:239]
    at mx.rpc.events::ResultEvent/http://www.adobe.com/2006/flex/mx/internal::callTokenResponders()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\events\ResultEvent.as:207]
    at HTTPOperation/http://www.adobe.com/2006/flex/mx/internal::dispatchRpcEvent()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\http\HTTPService.as:991]
    at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::resultHandler()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\AbstractInvoker.as:318]
    at mx.rpc::Responder/result()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\Responder.as:56]
    at mx.rpc::AsyncRequest/acknowledge()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\rpc\AsyncRequest.as:84]
    at DirectHTTPMessageResponder/completeHandler()[E:\dev\hero_private_beta\frameworks\projects\rpc\src\mx\messaging\channels\DirectHTTPChannel.as:451]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at …
Run Code Online (Sandbox Code Playgroud)

apache-flex alert flex4.5

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

不能在init上工作

完全没有Javascript,但非常渴望了解更多.

我有一个flex应用程序,我正在搞乱HTML包装器,试图弹出警报指向用户帮助.

我发现了一个名为noty的优秀jQuery插件,它模拟了您在SE站点中看到的标题警报.

<head>

<link rel="stylesheet" type="text/css" href="custom/css/jquery.noty.css"/>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript" 
        src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js">
</script>
<script type="text/javascript" src="custom/js/jquery.noty.js"></script>         
<script type="text/javascript" language="JavaScript">
// basic alert
//if (!confirm("Yo.\n\nAccept?"))
//    window.location.href = "custom/rejected.htm";

noty({text: 'yo!'});
</script>

</head>
Run Code Online (Sandbox Code Playgroud)

没有在萤火虫中出现任何错误,但警报也没有发射.我知道它的基本内容,并且需要一些额外的逻辑来告诉它在运行时触发,对吧?

我做错了什么或我错过了什么代码?

谢谢

完整代码在这里. 如果您需要更多信息,请通过评论告诉我.

javascript jquery jquery-plugins

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