使用python语言,读取每一行数据,提取出每一行的域名,最后将所有域名保存到指定的xlsx文件下
时间: 2024-09-14 19:04:07 浏览: 43
python写入数据到csv或xlsx文件的3种方法
要使用Python语言读取每一行数据并提取出每一行的域名,最后将所有域名保存到指定的xlsx文件中,你可以按照以下步骤进行:
1. 首先,需要导入处理Excel文件的库`openpyxl`和处理字符串的库`re`(正则表达式)。
2. 打开并读取包含域名的文本文件,每一行可能包含一个或多个域名。
3. 使用正则表达式定义一个模式,该模式能够匹配标准的域名格式。
4. 遍历文件的每一行,使用正则表达式找到所有匹配的域名。
5. 将提取出的域名存储到一个列表中。
6. 打开或创建一个Excel文件,并将域名列表写入到该文件中。
下面是一个简单的代码示例:
```python
import re
from openpyxl import Workbook
# 正则表达式匹配域名
pattern = re.compile(r'(https?://)?([\w-]+\.)+[\w-]+(/[\w- .%/]*)?')
# 打开文本文件
with open('domains.txt', 'r') as file:
domains = []
for line in file:
# 使用正则表达式查找所有域名
found_domains = pattern.findall(line)
# 提取域名
domains.extend([url[1] for url in found_domains])
# 创建一个新的Excel工作簿
wb = Workbook()
ws = wb.active
# 将域名写入工作表的第一列
for index, domain in enumerate(domains):
ws.append([domain])
# 保存工作簿到指定的xlsx文件
wb.save('domains_list.xlsx')
```
确保在运行此代码之前已经安装了`openpyxl`库,可以使用`pip install openpyxl`进行安装。
阅读全文