在python中跨多个模块/类共享和修改变量

时间:2017-11-14 11:07:46

标签: python web web-scraping

我要做的是为不同的wiki图像网站设置一个刮刀,然后在"实时"中获取链接。来自不同的课程/模块。

结构基本上是:

main.py:将线程进程调用给scraper scraperwiki1.py,scraperwiki2.py是获得结果的人

我现在拥有的是在main.py中它调用刮刀并等待返回:

scraped_images = scraperwiki1(url)... etc etc 
(this is actually threaded to call multiple scrapers at once, but I am simplifying here)

并在每个scraperwiki上:

imageList = []
r = requests.get(url).content
result =  ... scraper functions ...
for images in result:
 imageList.append(images)
return imageList

但是除了等待scraperwiki1,scraperwiki2处理所有链接然后将结果作为列表返回之外,还有什么我可以做到的,以便在它仍在进行时获得这些结果?

我尝试在main.py中设置全局

scraped_images = []
global scraped_images

然后在scraperwiki1和scraperwiki2

import scraped_images
r = requests.get(url).content
result =  ... scraper functions ...
for images in result:
 scraped_images.append(images)

但似乎我无法以这种方式访问​​和附加到列表中。

有没有办法优化这个过程?因为有时候刮大页面需要一段时间。

提前致谢

0 个答案:

没有答案