Python 如何将结果列表保存到文件中

Python 如何将结果列表保存到文件中,python,pdf,web-scraping,Python,Pdf,Web Scraping,我已经从这个网站上抓取了我想要的pdf链接列表 这是地方议会委员会会议的全部记录。 我现在需要将所有结果保存到一个文件中,这样我就可以下载并读取所有PDF。 我该如何拯救他们 这是我的代码: import requests import urllib.request import time from bs4 import BeautifulSoup as bs url = "https://www.gmcameetings.co.uk/" r = requests.get(url) pag

我已经从这个网站上抓取了我想要的pdf链接列表 这是地方议会委员会会议的全部记录。 我现在需要将所有结果保存到一个文件中,这样我就可以下载并读取所有PDF。 我该如何拯救他们

这是我的代码:

import requests
import urllib.request
import time 
from bs4 import BeautifulSoup as bs

url = "https://www.gmcameetings.co.uk/"

r = requests.get(url)
page = r.text
soup = bs(page,'lxml')

folder_location = r'E:\Internship\WORK'

meeting_links = soup.find_all('a', href=True)

for link in meeting_links:
    if link['href'].find('/meetings/')>1:
        r2 = requests.get(link['href'])
        print(link['href'])
        page2 = r2.text
        soup2 = bs(page2, 'lxml')
        date_links = soup2.find_all('a', href=True)
        for dlink in date_links:
            if dlink['href'].find('/meetings/')>1:
                r3 = requests.get(dlink['href'])
                print(dlink['href'])
                page3 = r3.text
                soup3 = bs(page3, 'lxml')
                pdf_links = soup3.find_all('a', href=True)
                for plink in pdf_links:
                    if plink['href'].find('minutes')>1:
                        print("Minutes!")

我需要一个文件,有所有的链接,然后我可以读取PDF文件。很抱歉,我对编码一无所知。

只需使用常规文本文件,如下图所示,然后在其中写入您认为需要的任何输出: 打开'Test.txt','w'作为文件: 文件。写入“测试输出”

只需像这样使用常规文本文件,然后在其中写入您认为需要的任何输出: 打开'Test.txt','w'作为文件: 文件。写入“测试输出”

在写入模式下循环之前声明文件,在每次迭代中写入链接,并在每次添加时添加下一行

with open('Linkfile.txt', 'w') as f:
 for link in meeting_links:
    if link['href'].find('/meetings/')>1:
        r2 = requests.get(link['href'])
        print("link1")
        page2 = r2.text
        soup2 = bs(page2, 'lxml')
        date_links = soup2.find_all('a', href=True)
        for dlink in date_links:
            if dlink['href'].find('/meetings/')>1:
                r3 = requests.get(dlink['href'])
                print("link2")
                page3 = r3.text
                soup3 = bs(page3, 'lxml')
                pdf_links = soup3.find_all('a', href=True)
                for plink in pdf_links:
                    if plink['href'].find('minutes')>1:
                        print(plink['href'])
                        f.write(plink['href'])
                        f.write('\n')

在写入模式下,在for循环之前声明文件,在每次迭代中写入链接,并在每次添加时添加下一行

with open('Linkfile.txt', 'w') as f:
 for link in meeting_links:
    if link['href'].find('/meetings/')>1:
        r2 = requests.get(link['href'])
        print("link1")
        page2 = r2.text
        soup2 = bs(page2, 'lxml')
        date_links = soup2.find_all('a', href=True)
        for dlink in date_links:
            if dlink['href'].find('/meetings/')>1:
                r3 = requests.get(dlink['href'])
                print("link2")
                page3 = r3.text
                soup3 = bs(page3, 'lxml')
                pdf_links = soup3.find_all('a', href=True)
                for plink in pdf_links:
                    if plink['href'].find('minutes')>1:
                        print(plink['href'])
                        f.write(plink['href'])
                        f.write('\n')

我们可以使用Python的上下文管理器来打开文件并分配资源&一旦执行了操作,它也会关闭文件并释放资源

打开'links.txt','w'作为文件: 文件。写入“所需内容”


我们还可以根据需要指定文件类型扩展名,如links.txt、links.csv等。

我们可以使用Python的上下文管理器,它将打开文件并分配资源&一旦执行操作,它也将关闭文件并释放资源

打开'links.txt','w'作为文件: 文件。写入“所需内容”

我们还可以根据需要指定文件类型扩展名,如links.txt、links.csv等。

打印的内容会发送到sys.stdout。您可以将此标准输出设置为打开以进行写入或附加的文件。打印的内容将发送到sys.stdout。您可以将此标准输出设置为打开以进行写入或追加的文件。
import requests
from bs4 import BeautifulSoup as bs

url = "https://www.gmcameetings.co.uk/"

r = requests.get(url)
page = r.text
soup = bs(page,'lxml')

f= open(r"E:\Internship\WORK\links.txt","w+")
n = 0

meeting_links = soup.find_all('a', href=True)

for link in meeting_links:
    if link['href'].find('/meetings/')>1:
        r2 = requests.get(link['href'])
        print(link['href'])
        page2 = r2.text
        soup2 = bs(page2, 'lxml')
        date_links = soup2.find_all('a', href=True)
        for dlink in date_links:
            if dlink['href'].find('/meetings/')>1:
                r3 = requests.get(dlink['href'])
                print(dlink['href'])
                page3 = r3.text
                soup3 = bs(page3, 'lxml')
                pdf_links = soup3.find_all('a', href=True)
                for plink in pdf_links:
                    if plink['href'].find('minutes')>1:
                        n += 1
                        print("Minutes!")
                        f.write("Link " + str(n) + ": " + str(plink['href']) +"\n")
f.close()