请教一下, 如和爬取自己发的所有博客数据(文章的标题,发布时间,以及文章摘要) (他人的也行), 然后放在json 里或者放在excel 中呢 ??
使用Seleiumn 怎么操作呢 ?
看我这篇博客 , 最后面有写怎么做的, 但是没有加代码分析, 如需分析可以叫我哈
https://blog.csdn.net/qq_33681891/article/details/131889556
描述简单,讲解起来却很麻烦。大致思路是分析网页代码、定位元素,然后实际情况设置反反爬。其实你百度一下selenium的用法,看着案例改一下就差不多了
要爬取自己的博客文章数据,你需要遵循一些步骤。我们可以使用requests
和BeautifulSoup
从HTML中提取信息。然后我们可以将这些信息存储在json或Excel文件中。在以下示例中,我们假设你想从自己的博客爬取文章的标题,发布时间和摘要。
首先,让我们看看如何使用Python的requests
和BeautifulSoup
来获取你的博客文章的数据。
import requests
from bs4 import BeautifulSoup
import json
def get_blog_data(url):
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
posts = soup.find_all('div', {'class': 'post'}) # 请更改以适应你的博客布局
data = []
for post in posts:
title = post.find('h2', {'class': 'title'}).text # 请更改以适应你的博客布局
date = post.find('div', {'class': 'date'}).text # 请更改以适应你的博客布局
summary = post.find('div', {'class': 'summary'}).text # 请更改以适应你的博客布局
data.append({
'title': title,
'date': date,
'summary': summary,
})
return data
blog_url = 'http://your_blog_url.com' # 请更改为你的博客网址
blog_data = get_blog_data(blog_url)
# 保存为JSON
with open('blog_data.json', 'w') as f:
json.dump(blog_data, f)
这个脚本将获取你博客上的每篇文章的标题,日期和摘要,然后将这些数据存储在一个json文件中。你需要更改find
和find_all
函数的参数以适应你的博客页面的HTML布局。你也需要更改blog_url
变量为你的博客的URL。
如果你想将数据存储在Excel文件中,你可以使用pandas
库。
import pandas as pd
# 将数据转换为DataFrame
df = pd.DataFrame(blog_data)
# 将数据保存为Excel文件
df.to_excel('blog_data.xlsx', index=False)
你提到了Selenium,但是在大多数情况下,你可能并不需要它。Selenium主要用于与需要JavaScript交互的网站进行交互,例如动态加载内容或处理登录凭据。在这种情况下,只需使用requests
和BeautifulSoup
应该就足够了。如果你确定你的博客网站需要JavaScript才能访问所有内容,那么你可能需要使用Selenium。然而,Selenium的使用比较复杂,并且运行速度较慢,因此我建议仅在必要时使用Selenium。