python for循环中的函数只能运行一次?

查看:453
本文介绍了python for循环中的函数只能运行一次?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

**这是源码,奇了怪了,最后那个for循环中的函数run()只能运行一次,求大神指点**
刚才有个大神回复了还是有点问题,一不小心把问题删除了,重新发布一下,不好意思

#coding=utf8
import itchat
import time
import re
import xian

def run(url):

    xian.parse(url)
    
    itchat.auto_login(hotReload=True)
    
    users = itchat.search_friends(name='risk')                  #获取对方UserName,返回一个列表
    print('========================================================================')
    user = users[0]['UserName']                                 #提取指定UserName
    print(user)
    
    f = open('/Users/Air/itchat/data2.txt')
    lines = f.readlines()                                           #读取全部内容
    print(lines)
    
    for i in range(100):
    itchat.send(lines[i], toUserName=user)                 #UserName需要用上面获取的自己修改
    
    print("Success")
    f.close()
    itchat.run()
    
for x in range(1,5):

    url1 = 'https://m.taobao.com/list/list.htm?'
    run(url1)
    time.sleep(10)

解决方案

我估计是run里面最后的itchat.run()使得itchat服务被挂起了,由于挂起服务,所以第一次调用run()的时候无法跳出,导致后面几次for无法继续运行下去。

这篇关于python for循环中的函数只能运行一次?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆