Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用regex ft.BeautifulSoup从多个重定向URL提取html?_Python_Regex_Beautifulsoup - Fatal编程技术网

Python 使用regex ft.BeautifulSoup从多个重定向URL提取html?

Python 使用regex ft.BeautifulSoup从多个重定向URL提取html?,python,regex,beautifulsoup,Python,Regex,Beautifulsoup,嘿,我这里有一个假设。我有一个名为MyFakeSite(MyFakeSite.com)的网站,里面有一个音乐收藏区(MyFakeSite.com/music)。现在,在音乐收藏中,你可以查看所有的相册,每个相册都由url上的数字表示(例如myfakesite.com/music/1456或mysite.com/music/2354)。 如果每个指定的相册页面上的html都遵循相同的模板,例如所有页面都有一个p标记作为描述,那么我将尝试找出如何有选择地提取这些描述,然后进行操作。 所以我在这里写了

嘿,我这里有一个假设。我有一个名为MyFakeSite(MyFakeSite.com)的网站,里面有一个音乐收藏区(MyFakeSite.com/music)。现在,在音乐收藏中,你可以查看所有的相册,每个相册都由url上的数字表示(例如myfakesite.com/music/1456或mysite.com/music/2354)。 如果每个指定的相册页面上的html都遵循相同的模板,例如所有页面都有一个p标记作为描述,那么我将尝试找出如何有选择地提取这些描述,然后进行操作。 所以我在这里写了这段代码:

import re
import requests
from bs4 import BeautifulSoup

musicpage = requests.get('https://www.myfakesite.com/music/')

soup = BeautifulSoup(musicpage.text, 'html.parser')
albumlinks = soup.findAll('a', 'href'=re.compile("(/music/)+([0-9])"))

for link in links:
  textfromredirect = soup.findAll('p').text

print(textfromredirect)
最终的目标是抓取每个描述,并将它们写入一个单独的word文档中,用于我正在使用docxtpl包制作的每个专辑,这个包很棒,但很难导航


如何改进我的代码?

如果有url和每个数字的描述,它们很可能都会出现在一个总体
div
中。因此,首先对
div
运行
find_all
,然后在
div
中查找
url
p
。任何更有用的答案都需要一个实际问题和一个解决方案。