Как правильно отформатировать код для желаемого добавления вывода? - PullRequest
0 голосов
/ 09 мая 2019

Я пишу новый код и у меня проблемы с получением желаемого результата. Код читает html-файл и находит теги. выводит только URL. Я вставляю дополнительный код для завершения ссылки. Я пытаюсь вставить URL два раза в строке.

####### Parse for <a> tags and save ############
with open("page1.html", 'r') as htmlb:
    soup2 = BeautifulSoup(htmlb, 'lxml')
links = []
for link in soup2.findAll('a', attrs={'href':   re.compile("^https://")}):
    links.append('<a href="'+link.get('href')+'">'"{link}"'</a><br>')

time.sleep(.1)

with  open("page-2.html", 'w') as html:
    html.write('{links}\n'.format(links=links))

Ответы [ 2 ]

0 голосов
/ 10 мая 2019

Это должно дать вам желаемый HTML выходной файл:

import re
from bs4 import BeautifulSoup
import html 

with open("page1.html", 'r') as htmlb:
    soup2 = BeautifulSoup(htmlb, 'lxml')



with open("page2.html", 'w') as h:
    for link in soup2.find_all('a'):
       h.write("<a href=\"{}\">{}</a><br>".format(link.get('href'),link.get('href')))    
0 голосов
/ 09 мая 2019

Это дает мне желание, я хочу, я думаю, но не совсем. Я бы предпочел, чтобы это было написано "https://whatever.com/text/text/", чем чтобы увидеть" what.com/text/text"

####### Parse for <a> tags and save ############
with open("page1.html", 'r') as htmlb:
    soup2 = BeautifulSoup(htmlb, 'lxml')
links = []
for link in soup2.findAll('a', attrs={'href':   re.compile("^https://")}):
links.append('{0}</a><br>'.format(link,link))

with  open("page-2.html", 'w') as html:
    html.write('{links}\n'.format(links=links))
...