[公开]国际合作与交流—留学生国情教育项目中标公告
中标评审分析官方公示数据
中标原因深度分析独家解读
023/Cloud-Music-Downloader
/README.md
# Cloud Music Downloader
Cloud Music Downloader is a simple tool for downloading audio and lyrics of songs from cloud music platforms.
Features
- Multi-threaded downloading: Download in parallel to accelerate the process.
- Customizable download path: Define a custom download folder.
- Search and download: Search songs by title, artist, or album, and download them directly.
- Lyrics downloading: Download lyrics for each song automatically.
- Language selection: Choose between Chinese, English, and Japanese lyrics.
- Audio format selection: Select the audio format (MP3, AAC, etc.) you need for download.
Requirements
- Python 3.x
- Libraries: `requests`, `beautifulsoup4`, `os`, `threading`
Installation
1. Clone the repository: ```bash git clone https://github.com/qwen2023/Cloud-Music-Downloader.git ```2. Install the required Python libraries:
```bash
pip install requests beautifulsoup4
```
3. Download the `cloudmusic.css` and `cloudmusic.js` files and place them in the `static` directory.
4. Run the script:
```bash
python download_music.py
```
Usage
1. Run the script. 2. The script will prompt you to choose the language for lyrics download. 3. Enter the search query to find the song(s) you want to download. 4. Select the audio format and download path. 5. Start the download process.Example
```bash python download_music.py ```- Choose the language for lyrics download.
- Enter the search query.
- Select the audio format and download path.
- Start the download process.
License
This project is licensed under the MIT License./download_music.py
import os
import re
import requests
import threading
from bs4 import BeautifulSoup
# Global variables
download_path = os.path.expanduser('~')
download_path += '/Downloads/CMD/'
download_path = os.path.abspath(download_path)
os.makedirs(download_path, exist_ok=True)
thread_pool = [] # For multi-threaded downloading
search_count = 0
def search_song(query, language, format, download_path):
global search_count
search_count += 1
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
}
url = f'https://music.163.com/api/search/get/web?csrf_token='
data = {
's': query,
'type': 1,
'limit': 10,
'offset': 0
}
response = requests.post(url, headers=headers, data=data)
response.encoding = 'utf-8'
soup = BeautifulSoup(response.text, 'lxml')
search_results = soup.select('.result-list li')
song_info = []
for result in search_results:
song_name = result.select_one('.songName').text
artist = result.select_one('.s-fc7').text
album = result.select_one('.s-fc7').text
song_url = result.select_one('.songName a')['href']
song_url = 'https://music.163.com' + song_url
song_info.append((song_name, artist, album, song_url))
if search_count == 1:
print(f'Search result: {search_count}')
for idx, info in enumerate(song_info):
print(f'{idx + 1}. {info[0]} - {info[1]} / {info[2]}')
print('Please enter the number of the song you want to download:')
else:
print(f'Search result: {search_count}')
for idx, info in enumerate(song_info):
print(f'{idx + 1}. {info[0]} - {info[1]} / {info[2]}')
selected_song = input('Please enter the number of the song you want to download:')
if selected_song.isdigit():
selected_song = int(selected_song)
if 1 <= selected_song <= len(song_info):
selected_song = song_info[selected_song - 1]
print(f'Selected song: {selected_song[0]} - {selected_song[1]} / {selected_song[2]}')
download_song(selected_song[3], language, format, download_path)
else:
print('Invalid input, please enter a number between 1 and', len(song_info))
else:
print('Invalid input, please enter a number between 1 and', len(song_info))
def download_song(song_url, language, format, download_path):
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
}
response = requests.get(song_url, headers=headers)
response.encoding = 'utf-8'
soup = BeautifulSoup(response.text, 'lxml')
song_name = soup.select_one('#detail-title').text
artist = soup.select_one('#artist .s-fc7').text
album = soup.select_one('#album .s-fc7').text
song_id = re.search(r'/(\d+)/
一、项目编号:11000026210200172735-XM001
二、项目名称:国际合作与交流—留学生国情教育项目
三、中标(成交)信息
总中标成交金额:113.698 万元(人民币)
中标成交供应商名称、地址及中标成交金额:
中标成交供应商名称:北京外研在线数字科技有限公司
中标成交供应商地址:北京市海淀区中关村大街18号B座19层1901室
中标金额:29.8万元
中标成交供应商名称:北京语言大学
中标成交供应商地址:北京市海淀区学院路15号
中标金额:14.5万元
中标成交供应商名称:北京语言大学
中标成交供应商地址:北京市海淀区学院路15号
中标金额:12.9万元
中标成交供应商名称:北京航空航天大学
中标成交供应商地址:北京市海淀区学院路37号
中标金额:13.8万元
中标成交供应商名称:北京航空航天大学
中标成交供应商地址:北京市海淀区学院路37号
中标金额:27.796万元
中标成交供应商名称:华北电力大学
中标成交供应商地址:北京市昌平区回龙观
中标金额:14.902万元
| 供应商名称 | 供应商地址 | 统一信用代码 | 中标金额 | 中标成交备注信息 |
|---|---|---|---|---|
| 北京外研在线数字科技有限公司 | 北京市海淀区中关村大街18号B座19层1901室 | 91110108MA01BMP15W | 29.8 万元 | 评审总得分(综合评分法): 88.8 分 |
| 北京语言大学 | 北京市海淀区学院路15号 | 12100000400883084R | 14.5 万元 | 评审总得分(综合评分法): 69.8 分 |
| 北京语言大学 | 北京市海淀区学院路15号 | 12100000400883084R | 12.9 万元 | 评审总得分(综合评分法): 59 分 |
| 北京航空航天大学 | 北京市海淀区学院路37号 | 12100000400011227Y | 13.8 万元 | 评审总得分(综合评分法): 63.78 分 |
| 北京航空航天大学 | 北京市海淀区学院路37号 | 12100000400011227Y | 27.796 万元 | 评审总得分(综合评分法): 83.4 分 |
| 华北电力大学 | 北京市昌平区回龙观 | 1210000040000983X8 | 14.902 万元 | 评审总得分(综合评分法): 79.2 分 |
四、主要标的信息
| 供应商 | 商品名称 | 规格型号 | 数量 | 单价 | 总价 | 服务要求 |
|---|---|---|---|---|---|---|
| 北京外研在线数字科技有限公司 | 1 | 29.8万元 | 29.8万元 | 应用AI技术设计开发涵盖高等学校来华留学生中国国情教育课程和案例、实践基地等数字资源并具备交互功能的教育教学平台 合同履行期限:自合同签订之日起至2026年11月30日前完成全部工作。 | ||
| 北京语言大学 | 1 | 14.5万元 | 14.5万元 | 面向北京属地高校举办来华留学生中国国情课程教学基本功竞赛,提供包括竞赛环节筹划设计、专家邀请、宣传、物料制作、场地保障和竞赛组织等 合同履行期限:自合同签订之日起至2026年11月30日前完成全部工作。 | ||
| 北京语言大学 | 1 | 12.9万元 | 12.9万元 | 面向北京属地高校举办来华留学生教育英文授课(理工农医类)教学基本功竞赛,提供包括竞赛环节筹划设计、专家邀请、宣传、物料制作、场地保障和竞赛组织等全流程服务 合同履行期限:自合同签订之日起至2026年11月30日前完成全部工作。 | ||
| 北京航空航天大学 | 1 | 13.8万元 | 13.8万元 | 面向北京属地高校举办来华留学生教育英文授课(人文社科类)教学基本功竞赛,提供包括竞赛环节筹划设计、专家邀请、宣传、物料制作、场地保障和竞赛组织等全流程服务 合同履行期限:自合同签订之日起至2026年11月30日前完成全部工作。 | ||
| 北京航空航天大学 | 1 | 27.796万元 | 27.796万元 | 面向北京属地高校举办来华留学生招生干部职业能力竞赛,提供包括竞赛环节筹划、题目设置、情景案例设计、专家邀请、宣传、物料制作、场地保障和竞赛组织等全流程服务;围绕业务技能提升,举办来华留学生招生管理干部工作坊,提供包括内容设计、情景案例设计、专家邀请、宣传、物料制作、场地保障和工作坊组织等全流程服务 合同履行期限:自合同签订之日起至2026年11月30日前完成全部工作。 | ||
| 华北电力大学 | 1 | 14.902万元 | 14.902万元 | 面向北京属地高校举办来华留学生管理干部职业能力竞赛,提供包括竞赛环节筹划、题目设置、情景案例设计、专家邀请、宣传、物料制作、场地保障和竞赛组织等全流程服务 合同履行期限:自合同签订之日起至2026年11月30日前完成全部工作。 |
项目用途:教学用;简要技术要求:详见招标文件 ;合同履行期限:自合同签订之日起至2026年11月30日前完成全部工作。
五、评审专家(单一来源采购人员)名单:
段泉圣 、肖进 、阳美兰、俞芳、刘亮
六、代理服务收费标准及金额:
本项目代理费总金额:1.70547万元(人民币)
本项目代理费收费标准:
参照原国家计委《招标代理服务收费管理暂行办法》(计价格[2002]1980号)和《关于招标代理服务收费有关问题的通知》(发改办价格[2003)857号)《发改价格(2011)534号》文件中的相关规定执行,本项目代理费以中标金额为基准、按差额定率累进法计算,由中标供应商按照服务招标标准支付
七、公告期限
自本公告发布之日起1个工作日。
八、其它补充事宜
01包 -来华留学生管理干部职业能力竞赛组织实施服务 代理服务费:2235.30元
02包- 来华留学生招生管理干部职业能力提升服务和招生干部职业能力竞赛组织实施服务 代理服务费:4169.40元
04包-来华留学生教育英文授课(人文社科类)教学基本功竞赛组织实施服务 代理服务费:2070.00元
05包-来华留学生教育英文授课(理工农医类)教学基本功竞赛组织实施服务 代理服务费:1935.00元
06包-来华留学生中国国情课程教学基本功竞赛组织实施服务 代理服务费:2175.00元
07包-来华留学生中国国情教育数字资源平台开发服务 代理服务费:4470.00元
九、凡对本次公告内容提出询问,请按以下方式联系。
1.采购人信息
名 称:北京市教委本级事业财务
地址:北京市通州区达济街6号院
联系方式:张老师,010-64228110
2.采购代理机构信息
名 称:北京中诚天安咨询有限公司
地 址:北京市朝阳区曙光西里甲1号第三置业东域大厦B座2603
联系方式:董延霞、张胜波、邵敏、朱美西、陈楚红、马星旭,18811397403
3.项目联系方式
项目联系人:董延霞、张胜波、邵敏、朱美西、陈楚红、马星旭
电 话: 18811397403
数据来源:查看官方原文 | 发布日期:2026-07-01