我有一个python脚本,使用基本身份验证和使用tweetstream模块挂钩到Twitter Streaming API.
我每分钟收集10条推文.
我正在断断续续地断开连接,因此目前正在记录它们发生的频率.
我一直在达到我的速率限制并获得420个HTTP错误.
我知道,对于搜索API,您可以使用OAuth身份验证获得更高的配额.对于流媒体,我找不到任何关于基本和OAuth之间的速率限制差异的参考.无论如何,看起来我正在使用的python Tweetstream不支持使用流API.
我注意到Tweetstream的Ruby版本支持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的人,你能推荐一种方法吗?
我们有一个Web应用程序,我们需要为客户更轻松地部署它们.新安装的当前工作流程:
这对我们的用户来说是一个繁琐的过程,我想将它封装到一个安装程序中,并且一直在NSIS中看到这样做,这似乎有一个庞大的社区,但后来偶然发现了install4j,虽然看起来鲜为人知,但更多特定于基于java的应用程序.
只是想从更多经验丰富的用户那里得到一些平台上最佳选择的反馈.
我不想半途而废,然后意识到我选择了错误的安装平台.
我正在编写我的第一个NSIS脚本,并享受学习曲线.
该应用已经:
使用捆绑的安装程序安装Apache Tomcat 7.
ExecWait'"$ PLUGINSDIR\apache-tomcat-7.0.19_x64.exe"'
在这个单独的安装程序中,用户可以选择与默认位置不同的位置来安装Tomcat.
另一个Tomcat也可能已存在于同一台机器上,并且它们使用不同的端口号安装第二个实例.
我查看了其他一些示例,但是他们通过将zip版本解压缩到特定文件夹来安装Tomcat.
我认为这是运行TC7 exe安装程序的更好方法.当我们需要将它更换为更新的版本时,也会使生活更轻松.
所以,我的问题是:保留他们刚刚安装Tomcat的路径的最佳方法是 什么,以便我可以从Tomcat安装程序中获取它并在我的NSIS脚本中使用它来部署WAR文件?
我希望找到一个系统变量,但看不到任何.
我有一些地理边界,我有一个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的信息.
使用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的最有效方法是什么?
我是否必须将其分解为列表?谢谢.
有一个父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) 这可能是相当简单的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个).
即我想为每个酒吧定义不同的颜色.
有人能让我摆脱困境并提供一些如何实现这一目标的指导吗?
我有一个常规的传入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) 我在一个月前在IIS7上设置了一个基本的Javascript应用程序.我利用Sharrre jquery插件为它添加了一些社交媒体按钮.
几个月他们看起来像预期的那样:
编辑
下面的截图不是来自我的网站,因为我没有屏幕抓取它的工作时间.您可以通过此图像看到它的工作原理.

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

我没有对代码进行任何更改,所以寻找一些建议来解决这个问题?
我能想到的可能是因为有更多人分享它,这个数字导致气球以某种方式移动到其他地方或消失了?我无法在Firebug中看到任何相关的错误,我不相信IIS已经在服务器端摆弄.
这可能是一个菜鸟错误,但我在学习python的早期阶段.

不太清楚我做错了什么,或者如何纠正这个问题.
这是一个简短的截屏视频,如果它再流光了.
编辑 - 回应评论.
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) 这是非常基本的,那里有样品,但我仍在努力.
我需要使用是/否选项发出警报.
我需要在动作中做到这一点.
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) 我完全没有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)
没有在萤火虫中出现任何错误,但警报也没有发射.我知道它的基本内容,并且需要一些额外的逻辑来告诉它在运行时触发,对吧?
我做错了什么或我错过了什么代码?
谢谢
完整代码在这里. 如果您需要更多信息,请通过评论告诉我.
python ×4
javascript ×3
apache-flex ×2
jquery ×2
nsis ×2
pandas ×2
python-2.7 ×2
tweetstream ×2
alert ×1
anaconda ×1
css ×1
d3.js ×1
dojo ×1
esri ×1
flex4.5 ×1
fullscreen ×1
geojson ×1
geospatial ×1
google-plus ×1
install4j ×1
jprofiler ×1
social-media ×1
tomcat ×1
twitter ×1