python for循环中的函数只能运行一次?
问题描述
**这是源码,奇了怪了,最后那个for循环中的函数run()只能运行一次,求大神指点**刚才有个大神回复了还是有点问题,一不小心把问题删除了,重新发布一下,不好意思#coding=utf8import itchatimport timeimport reimport xiandef 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)
问题解答
回答1:我估计是run里面最后的itchat.run()使得itchat服务被挂起了,由于挂起服务,所以第一次调用run()的时候无法跳出,导致后面几次for无法继续运行下去。
回答2:itchat.run会挂起,把itchat.autologin和itchat.run提到外面来,然后起个子线程来运行你自己的run函数,不过itchar.run必须放到子线程启动之后
相关文章:
1. docker镜像push报错2. angular.js - 不适用其他构建工具,怎么搭建angular1项目3. javascript - 如何获取未来元素的父元素在页面中所有相同元素中是第几个?4. linux运维 - python远程控制windows如何实现5. javascript - js判断一个数组是否重复6. java - tomcat服务经常晚上会挂,求解?7. 百度地图api - Android百度地图SDK,MapView上层按钮可见却不可触,怎么解决?8. javascript - 后端传过来的数据格式是这样,如何使用?9. java - 原生CGLib内部方法互相调用时可以代理,但基于CGLib的Spring AOP却代理失效,为什么?10. python - django models 为生成的html元素添加样式。
