我的dryscrape有问题。 我创建了一个小脚本,它会在假日网站上搜索价格并将它们与期望的价格进行比较。 它应该在每小时或每天一次的间隔内完成。但是我似乎无法循环脚本。
第一次运行总是正常,第二次运行失败,因为我比较的变量是空的。
经过一些测试后,我发现dryscrape部件在第二次运行时返回空数据,但我不知道为什么。也许有人知道我做错了什么?代码的来源可以在这里找到:
https://git.2li.ch/Nebucatnetzer/price_checker/src/test
具体在这里:
https://git.2li.ch/Nebucatnetzer/price_checker/src/master/price_checker.py
这是测试运行的输出。 200是第一次运行的返回webserver返回码,第二次运行的返回码是0。
[andreas@gwyn price_checker]$ ./price_checker.sh
200
No Match
0
Traceback (most recent call last):
File "/home/andreas/git_repos/price_checker/price_checker.py", line 115, in <module>
if website.extract_price() < settings.price:
File "/home/andreas/git_repos/price_checker/price_checker.py", line 64, in extract_price
lowest_price = min(int(s) for s in prices)
ValueError: min() arg is an empty sequence
到目前为止我尝试过:
到目前为止,唯一真正有效的是cronjob,它以间隔执行脚本。但是我更喜欢将整个设置包含在python脚本中,并且它是配置文件。它的工作间隔为1分钟。
有人知道我在这里做错了吗?