欢迎光临
我们一直在努力

某威客上的百元小单python项

最近闲来没事,逛了下威客网上发布的需求,选了点要求清晰的做了下。来我们看看要求:

看这要求呢没什么难度,就是文件读取后访问,然后取requests后的状态码。规矩,上代码:

import requests

def get_urls(url_file, file_name_file):
"""
从给定的文件中读取URL和文件名,然后将它们组合成新的URL。

参数:
url_file (str): 包含URL的文本文件路径。
file_name_file (str): 包含文件名的文本文件路径。

返回:
list: 包含所有组合后的URL的列表。
"""
with open(url_file, 'r') as url_fh, open(file_name_file, 'r') as file_name_fh:
# 从文件中读取URL和文件名,并去除行末的换行符
urls = url_fh.read().splitlines()
file_names = file_name_fh.read().splitlines()
# 组合URL和文件名,生成新的URL列表
return [(url + file_name) for url in urls for file_name in file_names]

def check_and_save_200_urls(urls, output_file):
"""
检查给定的URL是否返回200状态码,并将有效的URL保存到文件中。

参数:
urls (list): 包含待检查URL的列表。
output_file (str): 保存返回200状态码URL的输出文件路径。
"""
with open(output_file, 'w') as out_fh:
for url in urls:
try:
# 发送GET请求检查URL状态码
response = requests.get(url)
# 如果状态码为200,将URL写入输出文件
if response.status_code == 200:
out_fh.write(url + '\n')
except requests.exceptions.RequestException:
# 忽略请求异常,继续处理下一个URL
pass

if __name__ == "__main__":
# 定义输入文件和输出文件路径
url_file = "url.txt"
file_name_file = "file.txt"
output_file = "url200.txt"

# 生成全部URL并检查保存返回200状态码的URL
all_urls = get_urls(url_file, file_name_file)
check_and_save_200_urls(all_urls, output_file)
赞(0) 打赏
未经允许不得转载:创想未来 » 某威客上的百元小单python项

评论 抢沙发

评论前必须登录!

 

更好的Python学习

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册