我试图提取一些链接,其中包含其他链接,并且努力将for循环的输出获取到如下所述的单个列表中。

我的代码:

pages = ['https://pagetoscrape.com/?page=1',
         'https://pagetoscrape.com/?page=2',
         'https://pagetoscrape.com/?page=3'
        ]

for u in pages:
    response = requests.get(u)
    data = response.content
    soup = BeautifulSoup(data, 'lxml')
    for links in soup.find_all('div', class_='item-to-scrape'):
        link = links.a['href']

        print(link)

输出:

pagetoscrape.com/url1
pagetoscrape.com/url2
pagetoscrape.com/url3
pagetoscrape.com/url4
pagetoscrape.com/url5
pagetoscrape.com/url6
pagetoscrape.com/url7
...

我如何获得像这样的列表,以便以后将其用于类似于“页面”数组变量的其他操作(另一个循环,一个接一个地选择链接)?:

['pagetoscrape.com/url1', 'pagetoscrape.com/url2', 'pagetoscrape.com/url3', 'pagetoscrape.com/url4', ...]

#1楼 票数:1

使用列表理解来构建列表:

link_list = [links.a['href']
                for links in soup.find_all('div', class_='item-to-scrape') ] 

#2楼 票数:0 已采纳

如果我理解正确,那么您想要这样的事情。

pages = ['https://pagetoscrape.com/?page=1',
         'https://pagetoscrape.com/?page=2',
         'https://pagetoscrape.com/?page=3'
        ]

urls = []

for u in pages:
    response = requests.get(u)
    data = response.content
    soup = BeautifulSoup(data, 'lxml')
    for links in soup.find_all('div', class_='item-to-scrape'):
        link = links.a['href']
        urls.append(link)
        print(link)

  ask by VNE translate from so

未解决问题?本站智能推荐:

3回复

BeautifulSoup元素输出到列表

我有一个使用BeautifulSoup的输出。 我需要将'type''bs4.element.Tag'的输出转换为列表并将列表导出到名为COLUMN_A的DataFrame列中 我希望我的输出停在第14个元素(最后三个h2没用) 我的代码: 输出: 我希望列表如下:
1回复

搜寻网址的CSV列表并将结果输出到不同的CSV

我正在尝试从'YP_LA_Remodel_urls.csv文件中拉出url(我在下面包括了几个),将它们抓取,然后将结果导出到Yp_LA_Remodel_Info.csv 。 如果我使用一个网址(不是来自csv)并将其抓取,则可以正常工作。 它只是试图以大规模的方式做到这一点,而我正为此挂
2回复

从列表运行URL的Python脚本并输出到txt

我有一个单一URL的python脚本,我需要从url.txt为多个URL运行它,并在单个txt文件中获取输出。 这是python脚本(缩小): 以下是一个URL的示例输出: 我希望这个输出为URL 1,我的脚本完全按照我的意愿提供。 我想对URL 2,URL 3等重复此操作,如ur
1回复

如何从csv文件抓取YouTubeURL列表并使用Python输出到新的csv文件

我正在抓取多个YouTube视频,希望能够一次将它们抓取,并将视频的抓取时间戳记到一个csv文件中,因此我可以重复此过程并查看指标随时间的变化下面列出。 这是我正在使用的教程-https: //www.promptcloud.com/blog/how-to-scrape-youtube-da
2回复

将ChainMap数据输出导出到CSV

下面是一个链图/美丽汤刮刀,可从该网站刮擦医生的个人资料。 该代码运行没有错误,但是,我的IDE中没有显示csv输出。 我认为这是因为我没有正确考虑chainmap变量,但我不确定。 有人知道为什么是这样吗? 提前致谢!
1回复

我无法将bs4输出导出到文件

我刚开始学习刮刀,正在尝试将链接导出到 txt 文件但我被错误所困扰 这是我的代码: 有人可以向我解释发生了什么问题,我该如何解决? :)
1回复

Python循环以打印输出数据并写入CSV会产生“IndexError:列表索引超出范围”

我已经竭尽全力解决这个问题,但仍然无法解决。 我的代码令人困惑的部分如下- 指向行标题= soup.select(“ table#example”)[0] 每当我运行此命令时,都会出现错误“ IndexError:列表索引超出范围”。 它会根据需要生成CSV,但是每次运行它时,CSV
2回复

循环抓取数据并输出结果

我正在尝试访问 BBC 足球赛果网站以获取球队、射门、进球、卡片和事件。 我目前有 3 个团队数据传递到 URL。 我用 Python 编写脚本并使用 Beautiful bs4包。 将结果输出到屏幕时,打印​​第一队,第一队和第二队,然后是第一队、第二队和第三队。 所以第一支球队实际上被打印了 3