ToB企服应用市场:ToB评测及商务社交产业平台
标题:
【爬虫】使用Python爬取百度学术页面的标题、作者、摘要和关键词
[打印本页]
作者:
温锦文欧普厨电及净水器总代理
时间:
2024-6-15 02:31
标题:
【爬虫】使用Python爬取百度学术页面的标题、作者、摘要和关键词
在本文中,我将介绍如何使用Python编写一个网络爬虫,从百度学术页面提取研究论文的标题、作者、摘要和关键词。我们将使用 requests和 BeautifulSoup库来实现这一目标。
安装所需库
首先,确保已安装所需的Python库:
pip install requests beautifulsoup4
复制代码
编写爬虫
以下是一个示例脚本:
import requests
from bs4 import BeautifulSoup
# 百度学术页面URL
url = "https://xueshu.baidu.com/usercenter/paper/show?paperid=7ea6e4650085a4bf2457468cc815cabe&site=xueshu_se"
# 请求头
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
}
# 发送请求
response = requests.get(url, headers=headers)
response.encoding = 'utf-8'
if response.status_code == 200:
# 解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 提取标题
title_tag = soup.find('a', {'data-click': "{'act_block':'main','button_tp':'title'}"})
title = title_tag.get_text(strip=True) if title_tag else "未找到标题"
# 提取作者
author_tag = soup.find('p', {'class': 'author_text'})
author = author_tag.get_text(strip=True) if author_tag else "未找到作者"
# 提取摘要
abstract_tag = soup.find('p', {'class': 'abstract'})
abstract = abstract_tag.get_text(strip=True) if abstract_tag else "未找到摘要"
# 提取关键词
keywords_tag = soup.find('div', {'class': 'kw_wr'})
if keywords_tag:
keywords = [keyword.get_text(strip=True) for keyword in keywords_tag.find_all('a')]
keywords = ', '.join(keywords)
else:
keywords = "未找到关键词"
# 打印提取结果
print("标题:", title)
print("作者:", author)
print("摘要:", abstract)
print("关键词:", keywords)
else:
print("无法访问网页")
复制代码
代码表明
哀求头设置
:使用哀求头模仿浏览器哀求,避免被网站屏蔽。
解析网页内容
:使用BeautifulSoup解析HTML,提取所需信息。
处理未找到元素的情况
:如果元素未找到,输出相应的提示信息。
运行脚本
将上述代码保存为一个Python文件,比方scraper.py,然后在命令行中运行:
python scraper.py
复制代码
结果
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4