前輩好
基本上我沒學過python 單純用GPT寫了一段
然後貼到pycharm使用
用途是要在【經濟部商業司】https://findbiz.nat.gov.tw/fts/query/QueryList/queryList.do
這邊隨便找家公司統編當範例 86386290
搜尋結果會顯示
歐科商業電訊股份有限公司
統一編號:86386290 , 登記機關:臺北市政府 , 登記現況:核准設立 , 地址:臺北市南港區三重路19之13號8樓 , 資料種類:公司 , 核准設立日期 :0820105 , 核准變更日期:1120626
而我要抓取公司統編的核准變更日期:1120626 <==這7個數字 (之後有變動要Line通知我)
這邊先討論抓取問題
目前狀況是PYcharm run下去後能看到程式自動開啟chrome和網頁搜尋,到自動關閉網頁
但py的run最後還是會跳一堆錯誤~~ 且沒顯示出日期
請問該怎麼修改才能讓檔案顯示出【核准變更日期:1120626】 ,或也許存個LOG之類的
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from webdriver_manager.chrome import ChromeDriverManager
# 安装和启动 ChromeDriver
service = Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=service)
try:
# 访问指定网站
driver.get("https://findbiz.nat.gov.tw/fts/query/QueryBar/queryInit.do")
# 查找搜索输入框
search_box = driver.find_element(By.ID, "qryCond")
# 输入公司号码并提交
search_box.send_keys("86386290")
search_box.send_keys(Keys.RETURN)
# 等待页面加载并检查结果是否出现
WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.CSS_SELECTOR, "div.table-responsive"))
)
# 抓取搜索结果文本
result_text = driver.find_element(By.CSS_SELECTOR, "div.table-responsive").text
print(result_text) # 打印抓取的文本进行调试
# 查找 "核准變更日期" 并提取后面的七位数字
keyword = "核准變更日期:"
if keyword in result_text:
start_index = result_text.find(keyword) + len(keyword)
date_seven_digits = result_text[start_index:start_index + 7]
print("提取的七位数: ", date_seven_digits)
else:
print("未找到核准變更日期")
finally:
# 关闭浏览器
driver.quit()
-------------------------
最後會跳出 ~~等錯誤~~
selenium.common.exceptions.TimeoutException: Message:
Stacktrace:
GetHandleVerifier [0x0055B8E3+45827]
(No symbol) [0x004EDCC4]
(No symbol) [0x003E150F]
(No symbol) [0x004220BC]
(No symbol) [0x0042216B]
(No symbol) [0x0045E0F2]
(No symbol) [0x00442E44]
(No symbol) [0x0045C034]
(No symbol) [0x00442B96]
(No symbol) [0x00416998]
(No symbol) [0x0041751D]
GetHandleVerifier [0x00814513+2899763]
GetHandleVerifier [0x0086793D+3240797]
GetHandleVerifier [0x005E13B4+593364]
GetHandleVerifier [0x005E82DC+621820]
(No symbol) [0x004F70A4]
(No symbol) [0x004F37A8]
(No symbol) [0x004F3947]
(No symbol) [0x004E59FE]
BaseThreadInitThunk [0x761CFCC9+25]
RtlGetAppContainerNamedObjectPath [0x76F880CE+286]
RtlGetAppContainerNamedObjectPath [0x76F8809E+238]
```**