import requests
from lxml import etree
from selenium import webdriver
#//lxml需要下载(pip install lxml)
def getone2( url):
try:
text = requests.get(url, timeout=2).text
html = etree.HTML(text)
#获取到网页中的html
hrefs = html.xpath("//a/@href")
f=open('ArchLinuxlist2.txt', 'a+')
#f.write(url +'=================================n')
for href in hrefs:
if (str(href).endswith("iso") ) :
f.write(url + href+ 'n')
f.close
except Exception as e:
print(url, str(e))
def getone( url):
try:
text = requests.get(url, timeout=2).text
html = etree.HTML(text)
#获取到网页中的html
hrefs = html.xpath("//a/@href")
f=open('ArchLinuxlist1.txt', 'a+')
#f.write(url +'=================================n')
for href in hrefs:
if (str(href).find("20.04.3") > -1 ) :
url1= url + href
getone2(url1)
f.write(url + href+ 'n')
f.close
except Exception as e:
print(url, str(e))
url = "https://archlinux.org/mirrors/status/"
driver = webdriver.Chrome()
driver.get(url)
#header={"user-ange":"xxxxxx"}
#text = requests.get(url, headers=header).text
#text = requests.get(url).text
#html = etree.HTML(text)
#获取到网页中的html
#table = html.xpath('//*[@id="successful_mirrors"]')
#print(table)
table = driver.find_element_by_xpath('//*[@id="successful_mirrors"]')
rows = table.find_elements_by_tag_name('tr')
#print('rows:', rows)
f=open('ArchLinuxlist.txt', 'w')
#f=open('list.txt', 'a+')
#f.write('n'.join(hrefs))
#for href in hrefs:
for i in range(1, len(rows)):
href = rows[i].find_elements_by_tag_name('td')[0].text
#print(hrefs.index(href) + 1, len(hrefs), href)
print(i, len(rows), href)
#print(str(href).find("launchpad.net/"))
if (str(href).find("centos.org") < 0 ) and (str(href).startswith('http')):
f.write(href+'n')
#getone(href)
getone2(href+'iso/latest/')
f.close
driver.quit()