loops - 将每次迭代保存在新行中
问题描述
朋友们!我有以下代码:
import requests
from bs4 import BeautifulSoup
# 1 - Importar a página (html):
início_url = 'https://www.conjugacao.com.br'
final_url = ["/verbo-ir","/verbo-ser"]
# 2 - Requisição:
nome_verbos = []
for final_url in final_url:
url = início_url + final_url
página = requests.get(url)
soup = BeautifulSoup(página.text, 'lxml')
for verbos_nomes in soup.find_all('h1', class_='nmt'):
nome_verbos.append(verbos_nomes.text)
for items in soup.find_all('span', class_='f irregular'):
nome_verbos.append(items.text)
for items in soup.find_all('span', class_='f'):
nome_verbos.append(items.text)
# 3 Salvar resultados:
with open('verbos.txt', 'w') as f:
for line in nome_verbos:
f.write(line.upper())
f.write(',')
这段代码的输出如下:
output: VERBO IR,VOU,VAIS,VAI,VAMOS,IDES,VÃO, VERBO SER,SOU,ÉS,É,SOMOS,SOIS,SÃO
我唯一需要的是找出如何保存这个结果,如下所示:
expected_output:
VERBO IR -> VOU, VAIS,VAI,VAMOS,IDES,VÃO
VERBO SER -> SOU,ÉS,É,SOMOS,SOIS,SÃO
请问有什么想法吗?
解决方案
import requests
from bs4 import BeautifulSoup
patterns = [
'ir',
'ser'
]
def main(url):
with requests.Session() as req:
for pat in patterns:
r = req.get(url.format(pat))
soup = BeautifulSoup(r.text, 'lxml')
name = soup.select_one('.nmt').text
goal = [x.text for x in soup.select('.f, .irregular')]
print(f"{name} --> {', '.join(goal)}")
main('https://www.conjugacao.com.br/verbo-{}')
输出:
Verbo Ir --> vou, vais, vai, vamos, ides, vão, fui, foste, foi, fomos, fostes, foram, fora, foras, fora, fôramos, fôreis, foram, fosse, fosses, fosse, fôssemos, fôsseis, fossem, vá, vás, vá, vamos, vades, vão, for, fores, for, formos, fordes, forem, vai, vá, vamos, ide, vão, vás, vá, vamos, vades, vão
Verbo Ser --> sou, és, é, somos, sois, são, era, eras, era, éramos, éreis, eram, fui, foste, foi, fomos, fostes, foram, fora, foras, fora, fôramos, fôreis, foram, fosse, fosses, fosse, fôssemos, fôsseis, fossem, seja, sejas, seja, sejamos, sejais, sejam, for, fores, for, formos, fordes, forem, sê, seja, sejamos, sede, sejam, sejas, seja, sejamos, sejais, sejam
推荐阅读
- php - PHP HTML:表格未正确对齐
- c# - 对实现通用服务的抽象类实现不同的具体化
- python - 我得到 TypeError: can't multiply sequence by non-int of type 'float'
- liquid - 如何按首字母和液体对项目进行分组?
- go - 我对发送者通道的效果有疑问
- javascript - “泄露的论点”是谎言吗?
- python-3.x - 设置 keras 和 tensoflow 以与 AMD GPU 一起运行
- laravel - 不能 require_once fdpf/fpdf.php
- r - 我可以使用数据表连接或聚合函数来聚合开启日期和关闭日期之间的时间序列数据吗?
- amazon-web-services - 错误:属性值类型不正确 - Terraform 数据源(aws_ip_ranges)