Предполагается, что вы пытаетесь сохранить URL-адреса с сайта в файл CSV - по одному URL на строку.Сначала не используйте f
, то есть для файла.Вы можете написать ссылку непосредственно в CSV, заключив ссылку в массив writer.writerow([link.get('href')])
.Надеюсь, это поможет.В противном случае, пожалуйста, отредактируйте свой вопрос и добавьте больше деталей.
import csv
import requests
from bs4 import BeautifulSoup
j= [["Population and Housing Unit Estimates"]] # Title
k= [["Web Links"]] # Column Headings
example_listing='https://www.census.gov/programs-surveys/popest.html' #Source
r=requests.get(example_listing) #Grab page source html
html_page=r.text
soup=BeautifulSoup(html_page,'html.parser') #Build Beautiful Soup object to help parse the html
with open('HTMLList.csv','w', newline="") as f: #Choose what you want to grab
writer=csv.writer(f, delimiter=' ',lineterminator='\r')
writer.writerows(j)
writer.writerows(k)
for link in soup.find_all('a'):
url = link.get('href')
if url:
writer.writerow([url])