微信扫码
添加专属顾问
我要投稿
任务:网页上的表格内容下载保存为excel表格
在deepseek中输入提示词:
你是一个Python编程专家,写一个网页爬取的脚本,完成任务如下:
在F盘新建一个excel表格文件:Amplifypartnersportfolio.xlsx
打开网页:https://www.amplifypartners.com/portfolio,
定位所有的role="listitem"的div元素,在div元素中定位class="mob-name"的div标签,提取其内容,写入excel表格的第1列;
定位class="copy-wr"的div标签,提取其中<p>标签的文本内容,写入excel表格的第2列;
定位fs-cmsfilter-field="status"的div标签,提取其内容,写入excel表格的第3列;
定位class="mob-link"的div标签,提取其内容,写入excel表格的第4列;
定位第1个class="flex-vertical gap-4"的div标签, 找到所有的<p>标签, 提取每个 <p> 标签中的文本内容,过滤掉不需要的文本:“TEAM”和空字符串,然后写入excel表格的第5列;
定位第2个class="flex-vertical gap-4"的div标签, 找到所有的<p>标签, 提取每个 <p> 标签中的文本内容,过滤掉不需要的文本:“Milestones”和空字符串,然后写入excel表格的第6列;
定位第3个class="flex-vertical gap-4"的div标签, 找到所有的<p>标签, 提取每个 <p> 标签中的文本内容,过滤掉不需要的文本:“Articles”和空字符串,然后写入excel表格的第6列;
注意:每一步都要输出信息到屏幕上
Deepseek给出的Python源代码:
import requests
from bs4 import BeautifulSoup
import openpyxl
# 创建一个新的Excel工作簿
workbook = openpyxl.Workbook()
sheet = workbook.active
sheet.title = "Amplify Partners Portfolio"
# 设置表头
sheet['A1'] = 'Name'
sheet['B1'] = 'Location'
sheet['C1'] = 'Status'
sheet['D1'] = 'Link'
sheet['E1'] = 'Team'
sheet['F1'] = 'Milestones'
sheet['G1'] = 'Articles'
# 获取网页内容
url = 'https://www.amplifypartners.com/portfolio'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
# 定位所有的role="listitem"的div元素
list_items = soup.find_all('div', role='listitem')
row = 2 # 从第二行开始写入数据
for item in list_items:
try:
# 提取class="mob-name"的div标签内容
name_div = item.find('div', class_='mob-name')
name = name_div.text.strip() if name_div else ''
print(f"Extracted Name: {name}")
sheet[f'A{row}'] = name
# 提取class="copy-wr"的div标签中<p>标签的文本内容
location_div = item.find('div', class_='copy-wr')
location = location_div.find('p').text.strip() if location_div and location_div.find('p') else ''
print(f"Extracted Location: {location}")
sheet[f'B{row}'] = location
# 提取fs-cmsfilter-field="status"的div标签内容
status_div = item.find('div', {'fs-cmsfilter-field': 'status'})
status = status_div.text.strip() if status_div else ''
print(f"Extracted Status: {status}")
sheet[f'C{row}'] = status
# 提取class="mob-link"的div标签内容
link_div = item.find('div', class_='mob-link')
link = link_div.text.strip() if link_div else ''
print(f"Extracted Link: {link}")
sheet[f'D{row}'] = link
# 定位第1个class="flex-vertical gap-4"的div标签
team_div = item.find('div', class_='flex-vertical gap-4')
if team_div:
team_members = [p.text.strip() for p in team_div.find_all('p') if p.text.strip() not in ['TEAM', '']]
team_str = ', '.join(team_members)
print(f"Extracted Team: {team_str}")
sheet[f'E{row}'] = team_str
# 定位第2个class="flex-vertical gap-4"的div标签
milestones_div = item.find_all('div', class_='flex-vertical gap-4')[1] if len(item.find_all('div', class_='flex-vertical gap-4')) > 1 else None
if milestones_div:
milestones = [p.text.strip() for p in milestones_div.find_all('p') if p.text.strip() not in ['Milestones', '']]
milestones_str = ', '.join(milestones)
print(f"Extracted Milestones: {milestones_str}")
sheet[f'F{row}'] = milestones_str
# 定位第3个class="flex-vertical gap-4"的div标签
articles_div = item.find_all('div', class_='flex-vertical gap-4')[2] if len(item.find_all('div', class_='flex-vertical gap-4')) > 2 else None
if articles_div:
articles = [p.text.strip() for p in articles_div.find_all('p') if p.text.strip() not in ['Articles', '']]
articles_str = ', '.join(articles)
print(f"Extracted Articles: {articles_str}")
sheet[f'G{row}'] = articles_str
row += 1
except Exception as e:
print(f"Error processing item: {e}")
# 保存Excel文件
workbook.save('F:/Amplifypartnersportfolio.xlsx')
print("Data saved to Amplifypartnersportfolio.xlsx")
创建Excel工作簿: 使用 openpyxl 创建一个新的Excel工作簿,并设置表头。
获取网页内容: 使用 requests 库获取网页内容,并使用 BeautifulSoup 解析HTML。
定位和提取数据: 使用 BeautifulSoup 的 find 和 find_all 方法定位和提取所需的数据。
写入Excel: 将提取的数据写入Excel表格的相应列。
保存Excel文件: 将工作簿保存到指定路径。
运行此脚本后,你将在F盘根目录下找到 Amplifypartnersportfolio.xlsx 文件,其中包含提取的数据。
爬取成功:
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-30
Mockaroo - 模拟生成测试数据
2025-04-30
MCP实战:将公众号接口做成mcp后,我终于实现了,一句话让AI自己搜索、撰文、配图、排版并发布公众号
2025-04-29
AI时代软件测试的认知革命与架构重塑
2025-04-29
Prompt 练习|教育中的等待现象
2025-04-29
AI 友好架构:AI 编程最佳范式,构建 10x 效率提升的代码库(万字长文)
2025-04-29
Fetch MCP网页内容抓取实操:抓取“刘强东送外卖”新闻案例详细教程!
2025-04-29
技术为何无法帮助我们思考?从笔记软件的局限性谈起
2025-04-29
豆包是懂PDF论文阅读的
2025-03-06
2024-09-04
2025-01-25
2024-09-26
2024-10-30
2024-09-03
2024-12-11
2024-12-25
2024-10-30
2025-02-18