1.下载https://www.python.org/ftp/python/最新版本python文件
一个下载网站,查看最新的,然后下载对应版本文件(如,列出python版本,并下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz) 。
代码如下:
import requests
from lxml import etree
import time
import random
from fake_useragent import UserAgent
url = 'https://www.python.org/ftp/python/'
headers = {'User-Agent': UserAgent().random}
html = requests.get(url=url, headers=headers).content.decode('utf-8', 'ignore')
parse = etree.HTML(html)
table_list = parse.xpath('//a/text()')
for i in table_list:
print(i)
####打印如下:
..
2.0/
2.0.1/
2.1/
2.1.1/
2.1.2/
2.1.3/
2.代码优化,获取最新下载地址,如https://www.python.org/ftp/python/3.12.2/Python-3.12.2.tgz
import requests
from lxml import etree
import time
import random
import re
from distutils.version import LooseVersion
from fake_useragent import UserAgent
url = 'https://www.python.org/ftp/python/'
headers = {'User-Agent': UserAgent().random}
html = requests.get(url=url, headers=headers).content.decode('utf-8', 'ignore')
parse = etree.HTML(html)
table_list = parse.xpath('//a/text()')
my_list = []
for i in table_list:
my_list.append(i.replace('/','')) ##替换/为空
#print(my_list)
matched_elements = []
pattern = r'^\d.*$' ##匹配数据开头的元素
for n in my_list:
if re.search(pattern, n):
matched_elements.append(n)
#print(matched_elements)
re.compile(r'(\d+ | [a-z]+ | \.)', re.VERBOSE)
matched_elements.sort(key=LooseVersion, reverse=True) ##列表元素排序
x=matched_elements[0]
print('https://www.python.org/ftp/python/' +x +"/Python-" +x +".tgz")
打印输出:https://www.python.org/ftp/python/3.12.2/Python-3.12.2.tgz
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App