我使用python-dateutil来解析字符串中的日期:
import dateutil.parser
print dateutil.parser.parse('some null string', fuzzy=True).date()
2012-10-18
print dateutil.parser.parse('some 31 Oct 2012 string', fuzzy=True).date()
2012-10-31
Run Code Online (Sandbox Code Playgroud)
我期待的是dateutil.parser.parse('some null string', fuzzy=True).date()
抛出异常,但它返回当前日期.如果在提供的字符串中找不到日期,有人可以告诉我如何避免获取当前日期吗?
提前致谢.
我有一个 在ubuntu服务器上通过CRON JOB运行的start.sh bash脚本
start.sh包含下面提到的代码行
start.sh的路径是/home/ubuntu/folder1/folder2/start.sh
#!/bin/bash
crawlers(){
nohup scrapy crawl first &
nohup scrapy crawl 2nd &
wait $!
nohup scrapy crawl 3rd &
nohup scrapy crawl 4th &
wait
}
cd /home/ubuntu/folder1/folder2/
PATH=$PATH:/usr/local/bin
export PATH
python init.py &
wait $!
crawlers
python final.py
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果我在命令行上运行start.sh我在nohup.out文件中输出
但是当它通过cronjob执行这个bash文件时(尽管脚本运行正常)它不会产生nohup.out
我怎样才能得到输出这个的cronjob中的nohup.out?
我正在尝试使用网络音频振荡器创建一个简单的节拍器,因此不需要外部音频文件.我通过非常快速地上下调节振荡器的音量来创建节拍器的声音(因为你不能多次使用start()和stop()),然后以设定的间隔重复该功能.它最终听起来像一个漂亮的小木块.
下面的代码在Chrome,Safari和Opera中运行/听起来很棒.但是在Firefox中,当音量增加时,会出现令人讨厌的间歇性"点击".我已经尝试改变攻击/释放时间以摆脱点击,但它们必须真的,很久才会一直消失.事实上,很长一段时间,振荡器听起来像一个持续的音符.
var audio = new (window.AudioContext || window.webkitAudioContext)();
var tick = audio.createOscillator();
var tickVol = audio.createGain();
tick.type = 'sine';
tick.frequency.value = 1000;
tickVol.gain.value = 0; //setting the volume to 0 before I connect everything
tick.connect(tickVol);
tickVol.connect(audio.destination);
tick.start(0);
var metronome = {
start: function repeat() {
now = audio.currentTime;
//Make sure volume is 0 and that no events are changing it
tickVol.gain.cancelScheduledValues(now);
tickVol.gain.setValueAtTime(0, now);
//Play the osc with a super fast attack and release so it sounds like a click …
Run Code Online (Sandbox Code Playgroud) 我有一个使用scrapy的问题
yield Request(a_url[0],
meta={'item': aitem}, dont_filter=True,
callback=self.redeem_url, errback=self.error_page)
def redeem_url(self, response):
item = response.request.meta['item']
item['Click_to_Redeem_URL'] = response.url
yield item
Run Code Online (Sandbox Code Playgroud)
aitem
在a_url[0]
请求之前填充.有时我会得到302,404,301状态,Request
所以我想要的是如果我无法从a_url[0]
请求项目得到200响应应该让我没有找到任何方法,因为当我得到302 scrapy重试此请求而不是去error_page
errback ,如果在404中它会转到error_page
那里产生项目的方式,因为我在errback中知道我不能得到响应对象但是不包含meta中的项目的失败对象.
提前致谢
我正在写一个Bot,可以检查成千上万的网站,不管是英文与否.
我正在使用Scrapy(python 2.7框架)来抓取每个网站的第一页,
可以有人建议我检查网站语言的最佳方式,
任何帮助,将不胜感激.
我在一个项目中有多个蜘蛛,问题是我现在在SETTINGS中定义LOG_FILE
LOG_FILE = "scrapy_%s.log" % datetime.now()
Run Code Online (Sandbox Code Playgroud)
我想要的是什么 scrapy_SPIDERNAME_DATETIME
但我无法在log_file名称中提供spidername ..
我发现
scrapy.log.start(logfile=None, loglevel=None, logstdout=None)
Run Code Online (Sandbox Code Playgroud)
并在每个spider init方法中调用它,但它不起作用..
任何帮助,将不胜感激
我在ubuntu服务器上运行python脚本,虽然cronjob bellow是我的bash文件内容
#!/bin/bash
cd /home/ubuntu/
PATH=$PATH:/usr/local/bin
export PATH
nohup scrapy crawl first_job &
nohup scrapy crawl second_job &
nohup scrapy crawl third_job &
wait $(pgrep third_job)
nohup scrapy crawl fourth_job &
Run Code Online (Sandbox Code Playgroud)
我想要的是在third_job完成后,fourth_job开始执行
但
目前即使third_job完成,fouth_job等待first_job和second_job的完成
提前致谢
这是我的代码,我想做一个条件连接,我的问题是在for
循环结束时我有所有变量开头\n
.要删除它,我需要删除每个变量.我认为应该有一些方法来处理这个问题.任何建议,将不胜感激.
foo = bar = remaining = ''
for i in ['foo', 'foo', 'hello', 'foo', 'tr', 'foo', 'bar', 'foo', 'el']:
if 'foo' in i:
foo += '\n%s' % i
elif 'bar' in i:
bar += '\n%s' % i
else:
remaining += '\n%s' % i
foo = foo.strip()
bar = bar.strip()
remaining = remaining.strip()
Run Code Online (Sandbox Code Playgroud) python ×6
python-2.7 ×3
scrapy ×3
bash ×2
cron ×2
ubuntu ×2
crontab ×1
firefox ×1
javascript ×1
linux ×1
scrapyd ×1
web-crawler ×1