Python Pinterest 机器人的时间等待问题
The time waiting problem on the Python Pinterest bot
我是一名菜鸟 Python 开发人员,正在尝试做一些小项目来提高自己。现在,我正在其中一个开发 Pinterest 机器人。这个简单的机器人将文件夹中的图像固定到 Pinterest API 的帐户。 API一小时内最多只能加载10个视觉加载,我不想限制文件中的图像数量。我已经尝试了一些东西,但找不到没有错误的方法,因为我没有经验,认为有些东西我看不到。如果你能给我一个想法,我将不胜感激。
我写了一个简单的 if - else 循环,每次在文件中加载 10 张图像后,time.sleep 等待 1 小时。 API 出现超时错误。
我已经将上面的循环编辑了 7 分钟。 API 出现超时错误。
我试过将 time.sleep 减少到一分钟,效果很好,但是在十张图像之后,API 限制就成了问题。
我已经将运行 API 的代码定义为带有 def 的函数,并将其放入循环中。我认为这不会是一个问题,因为它会在睡眠阶段之后用 else 重新启动 API。它固定了十张图像没有任何问题,但是在睡眠回到开始后,API 出现超时错误。
带循环的版本:
api = pinterest.Pinterest(token="")
board = ''
note = ''
link = ''
image_list = []
images = open("images.txt", "w")
for filename in glob.glob('images/*.jpg'):
image_list.append(filename)
i = 0
p = 0
while i < len(image_list):
if p <= 9 and image_list[i] not in images:
api.pin().create(board, note, link, image_list[i])
i += 1
p += 1
images.write(image_list[i])
else:
time.sleep(3600)
p = 0
continue
带有 def 的版本:
def dude() :
i = 0
api = pinterest.Pinterest(token="")
board = ''
note = ''
link = ''
api.pin().create(board, note, link, image_list[i])
time.sleep(420)
i = 0
while i < len(image_list):
dude()
i += 1
print(i)
在尝试了很多东西之后,我能够通过重试库解决问题。首先,我使用以下代码安装了库。
$ pip3 install retrying
安装后,我更改了如下代码,机器人开始正常工作,没有任何 API 或时间错误。
from retrying import retry
image_list = []
images = open("images.txt", "w")
for filename in glob.glob('images/*.jpg'):
image_list.append(filename)
@retry
def dude() :
api = pinterest.Pinterest(token="")
board = ''
note = ''
link = ''
api.pin().create(board, note, link, image_list[i])
i = 0
while i < len(image_list):
dude()
i += 1
time.sleep(420)
我是一名菜鸟 Python 开发人员,正在尝试做一些小项目来提高自己。现在,我正在其中一个开发 Pinterest 机器人。这个简单的机器人将文件夹中的图像固定到 Pinterest API 的帐户。 API一小时内最多只能加载10个视觉加载,我不想限制文件中的图像数量。我已经尝试了一些东西,但找不到没有错误的方法,因为我没有经验,认为有些东西我看不到。如果你能给我一个想法,我将不胜感激。
我写了一个简单的 if - else 循环,每次在文件中加载 10 张图像后,time.sleep 等待 1 小时。 API 出现超时错误。
我已经将上面的循环编辑了 7 分钟。 API 出现超时错误。
我试过将 time.sleep 减少到一分钟,效果很好,但是在十张图像之后,API 限制就成了问题。
我已经将运行 API 的代码定义为带有 def 的函数,并将其放入循环中。我认为这不会是一个问题,因为它会在睡眠阶段之后用 else 重新启动 API。它固定了十张图像没有任何问题,但是在睡眠回到开始后,API 出现超时错误。
带循环的版本:
api = pinterest.Pinterest(token="")
board = ''
note = ''
link = ''
image_list = []
images = open("images.txt", "w")
for filename in glob.glob('images/*.jpg'):
image_list.append(filename)
i = 0
p = 0
while i < len(image_list):
if p <= 9 and image_list[i] not in images:
api.pin().create(board, note, link, image_list[i])
i += 1
p += 1
images.write(image_list[i])
else:
time.sleep(3600)
p = 0
continue
带有 def 的版本:
def dude() :
i = 0
api = pinterest.Pinterest(token="")
board = ''
note = ''
link = ''
api.pin().create(board, note, link, image_list[i])
time.sleep(420)
i = 0
while i < len(image_list):
dude()
i += 1
print(i)
在尝试了很多东西之后,我能够通过重试库解决问题。首先,我使用以下代码安装了库。
$ pip3 install retrying
安装后,我更改了如下代码,机器人开始正常工作,没有任何 API 或时间错误。
from retrying import retry
image_list = []
images = open("images.txt", "w")
for filename in glob.glob('images/*.jpg'):
image_list.append(filename)
@retry
def dude() :
api = pinterest.Pinterest(token="")
board = ''
note = ''
link = ''
api.pin().create(board, note, link, image_list[i])
i = 0
while i < len(image_list):
dude()
i += 1
time.sleep(420)