小孩子课本的mp3文件下载需要写了个小程序。
# -*- coding:utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import traceback # 3.x
import time
# 二年级下学期,提取码
subject_codes = ['54448098', '', '54441648', '54461192', '89473317', '89473311']
file_count = 0
# 参考资料
# http://mp3.bookmall.com.cn/
# http://chromedriver.storage.googleapis.com/index.html
# https://pypi.org/project/selenium/
def get_mp3(code):
driver = webdriver.Chrome() # 声明驱动对象
try:
driver.get('http://mp3.bookmall.com.cn/') # 发送get请求
time.sleep(6) # 页面加载有时候慢,导致查找不到目标元素
input_element = driver.find_element_by_id('code') # 找到目标
# input.send_keys('54441364') # 输入提取码
input_element.clear()
input_element.send_keys(code) # 输入提取码
time.sleep(1)
input_element.send_keys(Keys.RETURN) # 收入回车
time.sleep(6)
driver.find_element_by_id('accpet').click()
time.sleep(6) # 页面加载有时候慢,导致查找不到目标元素
element_list = driver.find_elements_by_class_name('download')
for element in element_list:
global file_count
file_count = file_count + 1
print(file_count)
element.click();
time.sleep(30)
except:
traceback.print_exc()
return False
finally:
driver.close() # 关闭谷歌浏览器
return True
def main():
for code in subject_codes:
if get_mp3(code):
time.sleep(30)
else:
for i in range(3):
if get_mp3(code):
break
if __name__ == '__main__':
main()
使用Python编写了一个小程序,用于下载小孩子课本的MP3文件,可能运用了chromedriver、selenium等工具辅助爬虫功能实现。
1769






