for num in range(config.P_NUMBER): lug_db_q.put("DIE") ## Start P_NUMBER process to fetch data proc_list = list() for num in range(config.P_NUMBER): proc_list.append(Process(target=mp_fill_lug, name=num, args=(lug_db_q, lug_data_q))) proc_list[-1].start() while num_read != num_elem: num_read = num_read + 1 read = lug_data_q.get() if read is not "ERROR": name = read["name"] url = read["url"] if name not in zodb: zodb[name] = lug.LUG(name) zodb[name].update_data(read) if zodb[name].messages != []: print("%s#%s:%s - %s" % (num_read, num_elem, name, url)) lug_report(lug_db[name], zodb[name].messages) # for mesg in zodb[name].messages: print(mesg) time.sleep(0.1) for num in range(config.P_NUMBER): proc_list[num].join(0.1) zodb_conn_close(db)
the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. ''' import lug import config import time import utils from check import fetch_site db, zodb = utils.zodb_conn_open("/tmp/zodb_test") name="ansa" url="http://www.ansa.it" b = fetch_site(name,url) if not zodb.has_key(name): zodb[name] = lug.LUG(name) zodb[name].update_data(b) for mesg in zodb[name].messages: print(mesg) utils.zodb_conn_close(db)