def main():
global executor
try:
session = requests.Session()
executor = ThreadPoolExecutor()
os.makedirs(dlDir, exist_ok=True)
url = 'http://support.netgear.cn/'
with open('netgear_cn_filelist.csv', 'w') as fout:
cw = csv.writer(fout)
cw.writerow(['model', 'fver', 'fname', 'furl', 'fdate', 'fsize', 'sha1', 'md5'])
resp = session.get(url=url)
root = html.fromstring(resp.text)
startProd = 1
prods = root.xpath(".//select[@name='select']/option")
for iProd, prod in enumerate(prods[startProd:], startProd):
# prodText = prod.xpath("./text()")[0].strip()
prodUrl = prod.xpath("./@value")[0].strip()
walkProd(session, urljoin(resp.url, prodUrl))
except BaseException as ex:
traceback.print_exc()
finally:
print('Wait for exeuctor shuddown')
executor.shutdown(True)
评论列表
文章目录