Python 如何在没有源代码的情况下获取网站的所有文本?
有没有办法在没有源代码的情况下获取网站的所有文本 比如:打开一个网站,然后按ctrl+a组合键点击那里的所有内容Python 如何在没有源代码的情况下获取网站的所有文本?,python,python-requests,Python,Python Requests,有没有办法在没有源代码的情况下获取网站的所有文本 比如:打开一个网站,然后按ctrl+a组合键点击那里的所有内容 导入请求 content=requests.get('任何url') 打印(content.text) 这将以文本形式打印源代码,但我希望通过上述方式实现这一点?为此,您必须安装beautifulsoup和lxml,但在这之后它将工作 from bs4 import BeautifulSoup import requests source = requests.get('your
导入请求
content=requests.get('任何url')
打印(content.text)
这将以文本形式打印源代码,但我希望通过上述方式实现这一点?为此,您必须安装beautifulsoup和lxml,但在这之后它将工作
from bs4 import BeautifulSoup
import requests
source = requests.get('your_url').text
soup = BeautifulSoup(source, 'lxml').text
print(soup)
步骤1:从网页获取一些HTML 第2步:使用Beautiful Soup包解析HTML(如果您没有事先的知识,请了解Beautiful Soup)https://pypi.org/project/beautifulsoup4/") 第3步:列出不需要的元素(例如标题、元、脚本)
这回答了你的问题吗?如果站点没有提供一种直接获取文本的方法,那么您唯一的方法就是像以前那样获取页面,并通过解析页面源代码以编程方式提取文本。可能有一些方法涉及呈现页面和从呈现的版本复制文本,但这与其他步骤和复杂度相同。
import requests
from bs4 import BeautifulSoup
url = 'https://www.zzz.com/yyy/ #give any url
res = requests.get(url)
html_page = res.content
soup = BeautifulSoup(html_page, 'html.parser')
text = soup.find_all(text=True)
output = ''
blacklist = [
'[document]',
'noscript',
'header',
'html',
'meta',
'head',
'input',
'script',
# name more elements if not required
]
for t in text:
if t.parent.name not in blacklist:
output += '{} '.format(t)
print(output)