Python 有没有一种方法可以使用BeautifulSoup从网页中提取CSS?

Python 有没有一种方法可以使用BeautifulSoup从网页中提取CSS?,python,html,python-3.x,web-scraping,beautifulsoup,Python,Html,Python 3.x,Web Scraping,Beautifulsoup,我正在做一个项目,它要求我查看网页,但要进一步使用HTML,我必须完整地看到它,而不是像一堆线和图片混合在一起。有没有一种方法可以使用BeautifulSoup解析CSS和HTML 这是我的密码: 从bs4导入美化组 def get_html(url、名称): r=请求。获取(url) r、 编码='utf8' 返回r.text 链接https://www.labirint.ru/books/255282/' 打开('labirint.html','w',encoding='utf-8')作为文

我正在做一个项目,它要求我查看网页,但要进一步使用HTML,我必须完整地看到它,而不是像一堆线和图片混合在一起。有没有一种方法可以使用BeautifulSoup解析CSS和HTML

这是我的密码:

从bs4导入美化组
def get_html(url、名称):
r=请求。获取(url)
r、 编码='utf8'
返回r.text
链接https://www.labirint.ru/books/255282/'
打开('labirint.html','w',encoding='utf-8')作为文件:
write(获取html(链接'255282'))

警告:页面:重定向到。

如果您的目标是真正解析css:

  • 这里有一些不同的方法:
  • 我还使用了这个网站上的一个很好的例子:
Beautiful soup将拖拽整个页面——它确实包括标题、样式、脚本、css和js中的链接等。我以前在pythonCodeArticle中使用过该方法,并针对您提供的链接重新测试了它

import requests
from bs4 import BeautifulSoup as bs
from urllib.parse import urljoin

# URL of the web page you want to extract
url = "ENTER YOUR LINK HERE"

# initialize a session & set User-Agent as a regular browser
session = requests.Session()
session.headers["User-Agent"] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36"

# get the HTML content
html = session.get(url).content

# parse HTML using beautiful soup
soup = bs(html, "html.parser")
print(soup)
通过查看汤的输出(它很长,我不会在这里粘贴)。。你可以看到这是一个完整的页面。只需确保粘贴到您的特定链接

现在,如果您想解析结果以获取所有css URL。。。。您可以添加以下内容:(我仍在使用上面描述得非常好的python代码文章链接中的部分代码)

输出的css_文件将是所有css文件的列表。现在,您可以单独访问这些样式,并查看正在导入的样式

注意:这个特定的站点有一个与html内联的混合样式(也就是说,他们并不总是使用css来设置样式属性…有时样式在html内容中)


这应该让您开始了。

如果您的目标是真正解析css:

  • 这里有一些不同的方法:
  • 我还使用了这个网站上的一个很好的例子:
Beautiful soup将拖拽整个页面——它确实包括标题、样式、脚本、css和js中的链接等。我以前在pythonCodeArticle中使用过该方法,并针对您提供的链接重新测试了它

import requests
from bs4 import BeautifulSoup as bs
from urllib.parse import urljoin

# URL of the web page you want to extract
url = "ENTER YOUR LINK HERE"

# initialize a session & set User-Agent as a regular browser
session = requests.Session()
session.headers["User-Agent"] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36"

# get the HTML content
html = session.get(url).content

# parse HTML using beautiful soup
soup = bs(html, "html.parser")
print(soup)
通过查看汤的输出(它很长,我不会在这里粘贴)。。你可以看到这是一个完整的页面。只需确保粘贴到您的特定链接

现在,如果您想解析结果以获取所有css URL。。。。您可以添加以下内容:(我仍在使用上面描述得非常好的python代码文章链接中的部分代码)

输出的css_文件将是所有css文件的列表。现在,您可以单独访问这些样式,并查看正在导入的样式

注意:这个特定的站点有一个与html内联的混合样式(也就是说,他们并不总是使用css来设置样式属性…有时样式在html内容中)

这应该让你开始