http://search.ccgp.gov.cn/bxsearch,帮我用python在这个网址写一个爬虫程序,要求爬取2016年1月1日年至2023年7月12日的信息化项目招标中标数据,其中限定采购人为中央企业,其他企业搜索结果过滤掉。将所爬取的每一条数据存入excel表格,并注明每一条数据的招标公告网址url
时间: 2024-04-12 07:33:54 浏览: 272
好的,我可以帮你编写一个Python爬虫程序来爬取你所需的信息。我将使用BeautifulSoup和pandas库来解析网页和保存数据到Excel表格中。以下是代码示例:
```python
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 设置爬取的起始和结束日期
start_date = "2016-01-01"
end_date = "2023-07-12"
# 构造请求URL
url = "http://search.ccgp.gov.cn/bxsearch"
params = {
"searchtype": "1",
"page_index": "1",
"bidSort": "0",
"buyerName": "中央企业",
"startDate": start_date,
"endDate": end_date,
}
# 发送请求并获取响应内容
response = requests.get(url, params=params)
soup = BeautifulSoup(response.text, "html.parser")
# 获取总页数
total_pages = int(soup.find("div", class_="vT-srch-result-list").find("span").text)
# 创建一个空的DataFrame来保存数据
df = pd.DataFrame(columns=["标题", "发布时间", "招标公告网址"])
# 循环遍历每一页的数据
for page in range(1, total_pages + 1):
params["page_index"] = str(page)
response = requests.get(url, params=params)
soup = BeautifulSoup(response.text, "html.parser")
# 获取每一页的招标信息
bids = soup.find_all("li", class_="vT-srch-result-item")
# 提取数据并保存到DataFrame中
for bid in bids:
title = bid.find("a").text
publish_date = bid.find("span", class_="vT-srch-item-publishtime").text
url = bid.find("a")["href"]
df = df.append({"标题": title, "发布时间": publish_date, "招标公告网址": url}, ignore_index=True)
# 将数据保存到Excel表格中
df.to_excel("招标数据.xlsx", index=False)
```
请注意,这只是一个示例代码,并不能保证能够完全符合你的需求。你可能需要根据实际情况对代码进行修改和调整。另外,请确保你遵守网站的使用规定和法律法规。
阅读全文