Tableau/RPA 系統工程師|零壹科技股份有限公司_Zero One Tech

台北市內湖區 1年以上 專科 電腦系統整合服務業
我要應徵
學歷: 資訊管理相關、資訊工程相關,專科、大學、碩士、博士
需加強技能-企業要求 點擊標籤,查看學習內容
PythonETLMS SQLJavaScriptTableauPower BI英文
需加強技能-相關
溝通能力系統開發系統整合流程整合教育訓練客戶專案數據分析SQLRPA
符合度
?

履歷符合度:登入計算

適合度
?

性格適合度:登入計算

Python
Python是一種物件導向、直譯式電腦程式語言,也是一種功能強大而完善的通用型語言,已經具有十多年的發展歷史,成熟且穩定。這種語言具有非常簡捷而清晰的語法特點,適合完成各種高層任務,幾乎可以在所有的作業系統中執行。 雖然 Python 可能被粗略地分類為「指令碼語言」(script language),但實際上一些大規模軟體開發計劃例如 Zope、Mnet 及 BitTorrent,Google 也廣泛地使用它。 Python 的支援者較喜歡稱它為一種高階動態編程語言,原因是「指令碼語言」泛指僅作簡單編程任務的語言,如 shell script、JavaScript 等只能處理簡單任務的編程語言,並不能與 Python 相提並論。 此外,由於 Python 對於 C 和其他語言的良好支援,很多人還把 Python 作為一種「膠水語言」(glue language)使用。 使用 Python 將其他語言編寫的程式進行整合和封裝。 在 Google 內部的很多專案使用 C++ 編寫性能要求極高的部分,然後用Python呼叫相應的模組。
技能挑戰:初級
技能挑戰:初級
目前等級:未達初級
2582 人已通過「初級」測驗,通過率83%,和求職精靈一起探索知識、增強能力!
我要挑戰
Hi~ 分享你的學習心得來幫助後輩或向前輩提問吧!
我要分享
我要提問

動態

  • 全部
  • 影片
  • 文章

104求職精靈x聯成

聯成

10/01 00:00

  • Photoshop
  • HTML5
  • CSS
  • jQuery
  • AutoCAD
  • 3ds Max
  • Python
  • scikit-learn
  • OpenCV
  • Creo Parametric
  • Illustrator
  • After Effects
  • Premiere
  • Cinema 4D
  • C#
  • Unity3D
  • RHCE
  • Red Hat Certified Engineer
  • CCNA
  • OpenStack
觀看 66 收藏 0

104求職精靈x電腦技能基金會

電腦技能基金會 精選線上課程

02/01 00:00

  • 程式語言 (C/Python)
  • Python
  • 程式語言
  • Python程式設計
觀看 338 收藏 2

104求職精靈xHahow好學校

Hahow好學校 精選線上課程

09/29 11:56

  • SQL
  • Machine Learning
  • 人工智慧
  • 資料庫
  • Python
觀看 434 收藏 23

104求職精靈xCupoy

01/29 15:40

  • Python
  • Google Analytics
  • Weka
  • Flink
  • Firebase
  • 深度學習
  • Machine Learning
  • NLP
  • 演算法開發
  • R
觀看 133 收藏 12

104求職精靈x商業發展研究院

商業發展研究院 精選線上課程

08/13 00:00

  • Python
  • 演算法
  • 資料科學
觀看 60 收藏 7

Learn Code With Mike品牌創辦人

10/17 18:24

Python網頁爬蟲動態翻頁的實作技巧

Q:Python網頁爬蟲動態翻頁是什麼? 在眾多的網頁中,當要載入的資料量非常龐大時,為了不影響執行效能的情況下,除了會使用滾動捲軸來動態載入更多的資料外,另一種最常見的方式就是利用分頁,來分別顯示特定筆數的資料。而Python網頁爬蟲遇到分頁的網站時,該如何翻頁爬取內容,就是本文要來分享的主題。 Q:頁碼使用GET的方式,Python網頁爬蟲如何動態翻頁? 大部分的網站分頁,都是使用GET方法來處理,從網址就可以知道目的地網址及傳至伺服器端的頁碼參數(page),當變換page參數的值時,就可以前往對應的頁碼網頁。 利用BeautifulSoup套件就可以使用Python迴圈,透過變換網址頁碼參數(page)的方式,翻頁爬取網頁內容了,如下範例: for page in range(1, 4): # 執行1~3頁 response = requests.get("
https://www.inside.com.tw/tag/AI?page="
+ str(page)) soup = BeautifulSoup(response.text, "html.parser") titles = soup.find_all("h3", {"class": "post_title"}) print(f"====================第{str(page)}頁====================") for title in titles: print(title.select_one("a").getText()) Q:頁碼使用POST的方式,Python網頁爬蟲如何動態翻頁? 另一個網站頁碼切換的方式會採用POST方法,就像信件一樣,知道寄送的地址(網址),卻不會知道信封中的內容(送往伺服器的頁碼參數)。 由於是使用POST方法來撈取網頁資料,所以當切換到第二頁時,會發現網址並不會像使用GET的頁碼一樣,會出現頁碼的參數,而是和第一頁的網址一模一樣,都沒有動靜。這時候,就需要結合Selenium套件,透過模擬使用者點擊下一頁按鈕,來進行換頁的動作。如下範例: browser = webdriver.Chrome(ChromeDriverManager().install(), chrome_options=options) browser.get("
https://rent.591.com.tw/")
area = browser.find_element_by_id("area-box-close") area.click() # 取消「選擇縣市」的div視窗 for page in range(1, 3): # 執行1~2頁 soup = BeautifulSoup(browser.page_source, "html.parser") # 取得所有class為pull-left infoContent的<li>標籤 elements = soup.find_all("li", {"class": "pull-left infoContent"}) print(f"==========第{str(page)}頁==========") for element in elements: # 取得<li>標籤下的<h3>標籤,再取得<h3>標籤下的<a>標籤文字,並且去掉空白 title = element.find("h3").find("a").getText().strip() print(title) page_next = browser.find_element_by_class_name("pageNext") page_next.click() # 點擊下一頁按鈕 time.sleep(10) # 暫停10秒 如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike(
https://www.learncodewithmike.com/2020/06/how-to-scrape-different-pages-using-python-scraper.html
)網站觀看更多精彩內容。
  • 網頁爬蟲
  • 網頁資料擷取與分析 Python
  • Python
拍手 2 留言 0 觀看 4 收藏 0

Learn Code With Mike品牌創辦人

10/17 18:08

3個建構Python動態網頁爬蟲重要的等待機制

Q:什麼是Python網頁爬蟲的等待機制? 使用Python Selenium套件來開發動態網頁爬蟲時,有一個非常重要的觀念,就是「等待(Waits)」,這是什麼意思呢?簡單來說,就是Python爬蟲程式「等待(Waits)」網頁載入所要使用的元素,進而執行其它的操作。如果沒有處理好,就會時常發例外錯誤或影響執行效率。所以,適當的使用「等待(Waits)」機制,可以讓Python爬蟲程式更為穩定。 Q:如何使用Python Selenium套件的sleep()等待機制? sleep()是強制程式碼停止執行所給定的時間,不論元素是否存在或網頁提早載入完成,都需等待給定的時間,才往下執行,並且每一次需要等待時,就要設定一次,如下範例: browser = webdriver.Chrome(ChromeDriverManager().install()) browser.get("
https://shopping.pchome.com.tw/")
time.sleep(20) # 強制等待20秒 search_input = browser.find_element_by_id("keyword") Q:如何使用Python Selenium套件的Implicit Waits(隱含等待)? Implicit Waits相較於sleep(強制等待),Implicit Waits(隱含等待)的等待時間是全域性,同樣能夠設定程式碼的等待時間,不過,如果「整個網頁」提早載入完成,就會往下執行,這邊要特別注意的是,就算要尋找的元素已經載入完成,還是需等待「整個網頁」載入完成,才會往下執行。 browser = webdriver.Chrome(ChromeDriverManager().install()) browser.get("
https://shopping.pchome.com.tw/")
browser.implicitly_wait(20) # 隱含等待20秒 search_input = browser.find_element_by_id("keyword") Q:如何使用Python Selenium套件的Explicit Waits(明確等待)? Explicit Waits(明確等待)提供了until()及until_not()方法(Method),語法說明如下: 1.until():符合指定的等待條件。 WebDriverWait(driver, 等待的最長時間, 檢查條件的頻率, 忽略的例外類別).until(expected_conditions條件, 超時例外的錯誤訊息) 2.until_not():不符合指定的等待條件。 WebDriverWait(driver, 等待的最長時間, 檢查條件的頻率, 忽略的例外類別).until_not(expected_conditions條件, 超時例外的錯誤訊息) Explicit Waits(明確等待)可以針對特定的元素,設定等待的最長時間及條件,當符合所設定的等待條件,程式碼就會往下執行,反之,如果不符合條件,則會一直等待到所給的最長時間,如果還是不符合條件,則會產生TimeoutException,如下範例: browser = webdriver.Chrome(ChromeDriverManager().install()) browser.get("
https://shopping.pchome.com.tw/")
# 前往PChome網站 # 明確等待 locator = (By.ID, "keyword") # 定位器 search_input = WebDriverWait(browser, 10).until( EC.presence_of_element_located(locator), "找不到指定的元素" ) 如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike(
https://www.learncodewithmike.com/2020/06/python-selenium-waits.html
)網站觀看更多精彩內容。
  • 網頁資料擷取與分析 Python
  • Python
  • 網頁爬蟲
拍手 2 留言 0 觀看 3 收藏 0

Learn Code With Mike品牌創辦人

10/15 21:55

Python使用BS4開發網頁爬蟲的技巧(下)

在實務上開發專案時,很多時候會利用其他網站的資料來進行分析或運用,而取得的方式除了透過網站所提供的API(Application Programming Interface)外,也可以利用Python來開發爬蟲程式,將網頁的HTML內容下載下來,接著利用BeautifulSoup套件(Package),擷取所需的資訊。 本文就來接續「Python使用BS4開發網頁爬蟲的技巧(上)」文章,來和大家繼續分享Python使用BS4開發網頁爬蟲的更多技巧。 Q:如何利用Python的BeautifulSoup套件搜尋前、後節點? 在同一層級的節點,想要搜尋前一個節點,可以使用BeautifulSoup套件(Package)的find_previous_siblings()方法,如下範例: result = soup.find("h3", itemprop="headline").find_previous_siblings("a") 相反的,在同一層級的節點,想要搜尋後一個節點,則使用find_next_siblings()方法(Method),如下範例: result = soup.find("h3", itemprop="headline").find_next_siblings("p") Q:Python的BeautifulSoup套件的取得屬性值方法? 在前面範例中,皆為取得所需之HTML節點,而如果想要取得某一個節點中的屬性值,則可以利用BeautifulSoup套件(Package)的get()方法(Method)。 假設,想要爬取「ETtoday的旅遊雲」桃園景點首頁(
https://travel.ettoday.net/category/%E6%A1%83%E5%9C%92/)的標題連結。首先,利用find_all()方法搜尋網頁中所有<h3>標籤且itemprop屬性值為headline的節點,接著,透過for迴圈讀取串列(List)中的節點,由於<h3>標籤底下只有一個<a>標籤,所以可以利用BeautifulSoup套件的select_one()方法進行選取,如下範例:
titles = soup.find_all("h3", itemprop="headline") for title in titles: print(title.select_one("a")) 最後,利用get()方法(Method)取得href屬性值中的網址,如下範例: titles = soup.find_all("h3", itemprop="headline") for title in titles: print(title.select_one("a").get("href")) Q:Python的BeautifulSoup套件如何爬取超連結的文字 要取得<a>標籤的連結文字,可以利用BeautifulSoup套件(Package)的getText()方法(Method),如下範例: titles = soup.find_all("h3", itemprop="headline") for title in titles: print(title.select_one("a").getText()) Q: find/find_all與select_one/select這兩種方法的差別和適合的使用時機是? 1.兩者的定位元素語法不同,select_one/select使用CSS的語法來進行元素定位。 2.find = select_one,皆是取得單一元素 find_all = select,皆是取得多個元素 3.find/find_all與select_one/select最大的差別就是語法不同,所以取決於您習慣哪一種語法來進行元素定位,如果要嚴格區分使用時機的話,通常select_one/select會使用在以class樣式類別來進行元素定位,或是定位元素的層級較多的情況,其餘會使用find/find_all。 如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike(
https://www.learncodewithmike.com/2020/02/python-beautifulsoup-web-scraper.html
)網站觀看更多精彩內容。
  • 網頁爬蟲
  • Python
  • 網頁資料擷取與分析 Python
拍手 0 留言 0 觀看 3 收藏 0
求職精靈 Python

05/30 00:00

  • 中階
  • Python
觀看 22 收藏 3
求職精靈 Python

01/11 00:00

  • 中階
  • Python
觀看 31 收藏 3
我要應徵