Python 萬能程式碼模版:爬蟲程式碼篇

專注的阿熊發表於2022-08-25

# file_name: excel_crawler_urllib3.py

import urllib3

import pandas as pd

def download_content(url):

# 建立一個 PoolManager 物件,命名為 http

http = urllib3.PoolManager()

# 呼叫 http 物件的 request 方法,第一個引數傳一個字串 "GET"

# 第二個引數則是要下載的網址,也就是我們的 url 變數

# request 方法會返回一個 HTTPResponse 類的物件,我們命名為 response

response = http.request("GET", url)

# 獲取 response 物件的 data 屬性,儲存在變數 response_data

response_data = response.data

# 呼叫 response_data 物件的 decode 方法,獲得網頁的內容,儲存在 html_content

# 變數中

html_content = response_data.decode()

return html_content

def save_excel():

html_content = download_content(")

# 呼叫 read_html 函式,傳入網頁的內容,並將結果儲存在 cmb_table_list

# read_html 函式返回的是一個 DataFrame list

cmb_table_list =外匯跟單gendan5.com pd.read_html(html_content)

# 透過列印每個 list 元素,確認我們所需要的是第二個,也就是下標 1

cmb_table_list[1].to_excel("tips2.xlsx")

def main():

save_excel()

if __name__ == '__main__':

main()

# file_name: excel_crawler_requests.py

import requests

import pandas as pd

from requests.exceptions import RequestException

def download_content(url):

try:

response = requests.get(url)

if response.status_code == 200:

return response.text

else:

return "None"

except RequestException as e:

return e

def save_excel(filename):

html_content = download_content(")

# 呼叫 read_html 函式,傳入網頁的內容,並將結果儲存在 cmb_table_list

# read_html 函式返回的是一個 DataFrame list

cmb_table_list = pd.read_html(html_content)

# 透過列印每個 list 元素,確認我們所需要的是第二個,也就是下標 1

# print(cmb_table_list)

cmb_table_list[1].to_excel(filename)

def main():

filename = "tips2.xlsx"

save_excel(filename)

if __name__ == '__main__':

main()


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946337/viewspace-2911969/,如需轉載,請註明出處,否則將追究法律責任。

相關文章