from selenium import webdriver from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By import time import traceback import re def bd_ocr_file(pictures): browser = webdriver.Chrome() browser.implicitly_wait(5) browser.maximize_window() browser.get('http://ai.baidu.com/tech/ocr/general') browser.execute_script("window.scrollTo(0, 850)") texts = [] wait = WebDriverWait(browser, 5) wait.until(EC.presence_of_element_located((By.ID, "demo-photo-upload"))) # 等待id为table的元素被加载出来 for picture in pictures: time.sleep(2) print("开始传文件") try: browser.find_element_by_css_selector('input[type="file"]').send_keys(picture) time.sleep(3) html = browser.find_element_by_id("demo-json").text res = re.compile(r'"words": "(.*)?"').findall(html) res = ' '.join(res) # print("开始图片识别") if not res: res = '空白' # print(res) texts.append(res) # print("完成图片识别\n") except Exception as e: print(e) traceback.print_exc() browser.quit() browser.quit() return texts