如何从Python代码中删除重复链接?

如何从Python代码中删除重复链接?,python,Python,如何从Python代码中删除重复链接 import requests from bs4 import BeautifulSoup, SoupStrainer import bs4 search_link = "https://www.census.gov/data/tables/2016/demo/popest/state-total.html" r = requests.get(search_link) soup = BeautifulSoup(r.text, 'html.parser')

如何从Python代码中删除重复链接

import requests
from bs4 import BeautifulSoup, SoupStrainer
import bs4

search_link = "https://www.census.gov/data/tables/2016/demo/popest/state-total.html"
r = requests.get(search_link)

soup = BeautifulSoup(r.text, 'html.parser')
results = soup.find_all('a')

file = open('testfile.txt','w') 

for link in results:
    S=link.get('href')
    file.write("%s \n" % S)

file.close()
print(len(results))

import csv
for link in results:
    S=link.get('href')
    csvRow = [S]
    csvfile = "data.csv"
    with open(csvfile, "a") as fp:
        wr = csv.writer(fp, dialect='excel')
        wr.writerow(csvRow )
在代码中替换:

for link in results:
    S=link.get('href')
    file.write("%s \n" % S)
与:

在代码中替换:

for link in results:
    S=link.get('href')
    file.write("%s \n" % S)
与:


href
检索值上使用
设置

for s in set(map(lamba x: x.get('href'), results)):
    file.write("{}\n".formate(s))

href
检索值上使用
设置

for s in set(map(lamba x: x.get('href'), results)):
    file.write("{}\n".formate(s))

在这两种情况下,它都会拉647个链接,我相信当你删除重复的链接时,它会拉得更少。这个数字并没有说明重复链接。也许哪里没有?testfile.txt文件中的链接数量是多少?在这两种情况下,它都会拉647个链接,我相信当你删除重复的链接时,它会拉得更少。这个数字并没有说明duplacate链接。也许哪里没有?testfile.txt文件中有多少链接?