97色伦色在线综合视频,无玛专区,18videosex性欧美黑色,日韩黄色电影免费在线观看,国产精品伦理一区二区三区,在线视频欧美日韩,亚洲欧美在线中文字幕不卡

網(wǎng)站建設技術主管網(wǎng)站的內容規(guī)劃怎么寫

鶴壁市浩天電氣有限公司 2026/01/24 16:14:52
網(wǎng)站建設技術主管,網(wǎng)站的內容規(guī)劃怎么寫,公司網(wǎng)站開發(fā)費用濟南興田德潤o評價,網(wǎng)站沒收錄了怎么辦速賣通作為全球主流跨境電商平臺#xff0c;其開放平臺 API 是合規(guī)采集商品價格、庫存、促銷等核心數(shù)據(jù)的首選方式#xff1b;針對無接口權限場景#xff0c;也可通過合規(guī)爬蟲補充采集。以下從API 接口接入#xff08;核心#xff09;、爬蟲采集#xff08;補充#xff…速賣通作為全球主流跨境電商平臺其開放平臺 API 是合規(guī)采集商品價格、庫存、促銷等核心數(shù)據(jù)的首選方式針對無接口權限場景也可通過合規(guī)爬蟲補充采集。以下從API 接口接入核心、爬蟲采集補充、數(shù)據(jù)處理三個維度完整說明。一、速賣通開放平臺 API 核心特性補充至跨境電商平臺體系維度核心特性認證方式基于 App Key App Secret 的 HMAC-SHA256 簽名認證部分接口支持 OAuth2.0核心接口1. 商品詳情aliexpress.product.redefining.getproductdetail2. 價格 / 促銷aliexpress.offer.redefining.getpricelist3. 運費模板aliexpress.logistics.redefining.getfreighttemplate4. SKU 信息aliexpress.product.redefining.getskuinfolist調用限制單 App 每日調用限額普通開發(fā)者約 10 萬次 / 天單接口 QPS≤5IP 無白名單但高頻調用易限流數(shù)據(jù)特點支持多站點如美國、俄羅斯、西班牙站、多幣種USD/EUR/RUB 等、多語言價格含折扣 / 運費拆分合規(guī)要求需完成企業(yè)開發(fā)者認證遵守《速賣通開放平臺服務協(xié)議》禁止商用數(shù)據(jù)倒賣二、速賣通 API 接口接入Python 實戰(zhàn)2.1 前置準備賬號與權限申請登錄速賣通開放平臺完成企業(yè)主體認證需提供營業(yè)執(zhí)照、跨境電商資質創(chuàng)建應用申請上述核心接口的調用權限審核周期約 1-3 個工作日記錄關鍵信息App Key、App Secret、應用授權碼若需 OAuth2.0。依賴庫安裝bash運行pip install requests pycryptodome python-dotenv # 簽名/請求/環(huán)境變量管理2.2 Python 封裝速賣通 API 客戶端核心代碼速賣通 API 簽名需嚴格遵循 HMAC-SHA256 算法且參數(shù)需按 ASCII 升序排序以下是可直接復用的客戶端python運行import requests import time import hmac import hashlib import json from urllib.parse import urlencode, quote from dotenv import load_dotenv import os # 加載環(huán)境變量避免硬編碼AppKey/Secret load_dotenv() APP_KEY os.getenv(ALI_APP_KEY) APP_SECRET os.getenv(ALI_APP_SECRET) API_GATEWAY https://openapi.aliexpress.com/api class AliExpressAPIClient: def __init__(self, app_key, app_secret): self.app_key app_key self.app_secret app_secret self.session requests.Session() self.session.headers.update({ Content-Type: application/x-www-form-urlencoded; charsetutf-8, User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AliExpressAPI/1.0 }) def generate_sign(self, params): 生成速賣通API簽名HMAC-SHA256 # 1. 參數(shù)按ASCII升序排序 sorted_params sorted(params.items(), keylambda x: x[0]) # 2. 拼接為keyvalue格式value需URL編碼 sign_str .join([f{k}{quote(str(v), safe)} for k, v in sorted_params]) # 3. HMAC-SHA256加密 Base64編碼 sign hmac.new( self.app_secret.encode(utf-8), sign_str.encode(utf-8), hashlib.sha256 ).digest() return sign.hex().upper() # 轉為十六進制大寫 def request(self, api_path, params, methodPOST, retry3, delay2): 發(fā)送API請求含重試機制 try: # 補充公共參數(shù) public_params { app_key: self.app_key, timestamp: int(time.time() * 1000), # 毫秒級時間戳 format: json, v: 2.0, sign_method: hmac-sha256 } # 合并公共參數(shù)與業(yè)務參數(shù) all_params {**public_params, **params} # 生成簽名 all_params[sign] self.generate_sign(all_params) # 發(fā)送請求 if method GET: url f{API_GATEWAY}{api_path}?{urlencode(all_params)} response self.session.get(url, timeout15) else: url f{API_GATEWAY}{api_path} response self.session.post(url, dataall_params, timeout15) response.raise_for_status() result response.json() # 處理接口錯誤 if result.get(error_code): raise Exception(fAPI錯誤{result[error_code]} - {result[error_message]}) return result except Exception as e: if retry 0: time.sleep(delay) # 指數(shù)退避重試 return self.request(api_path, params, method, retry-1, delay*2) raise Exception(f調用失敗{str(e)}) def get_product_detail(self, product_id, countryUS, currencyUSD): 獲取商品詳情含基礎價格、名稱、SKU api_path /aliexpress/product/redefining/getproductdetail params { product_id: product_id, # 速賣通商品ID從商品頁URL提取 country: country, # 站點國家編碼US/ES/RU等 currency: currency # 目標幣種 } return self.request(api_path, params) def get_product_price(self, product_id, sku_id): 獲取商品實時價格含促銷價、折扣 api_path /aliexpress/offer/redefining/getpricelist params { product_id: product_id, sku_id: sku_id # 空則返回默認SKU價格 } return self.request(api_path, params) def get_freight_template(self, template_id, countryUS): 解析運費模板計算商品運費總成本 api_path /aliexpress/logistics/redefining/getfreighttemplate params { template_id: template_id, country: country } return self.request(api_path, params) # 調用示例 if __name__ __main__: client AliExpressAPIClient(APP_KEY, APP_SECRET) # 示例查詢商品詳情替換為實際商品ID product_id 10050058089xxxx try: # 1. 獲取商品基礎信息 detail client.get_product_detail(product_id, countryUS, currencyUSD) # 2. 獲取價格信息 price client.get_product_price(product_id) # 3. 獲取運費模板從商品詳情中提取template_id template_id detail[data][freight_template_id] freight client.get_freight_template(template_id, countryUS) # 解析核心數(shù)據(jù)映射為標準字段 result { platform_code: ALIEXPRESS, product_id: product_id, product_name: detail[data][product_title], original_price: price[data][original_price], current_price: price[data][sale_price], currency: USD, shipping_fee: freight[data][default_freight], total_price: float(price[data][sale_price]) float(freight[data][default_freight]) } print(json.dumps(result, ensure_asciiFalse, indent2)) except Exception as e: print(f采集失敗{e})2.3 接口調用關鍵注意事項多站點 / 多幣種適配不同國家站點的價格、運費差異極大如俄羅斯站定價用 RUB運費含本地物流費需通過country參數(shù)指定目標站點幣種轉換可對接第三方匯率接口如 Open Exchange Rates將 USD/EUR 等統(tǒng)一轉換為 CNY示例python運行def convert_currency(amount, from_curr, to_currCNY): # 對接匯率接口獲取實時匯率示例為固定匯率需替換為真實接口 exchange_rates {USD: 7.2, EUR: 7.8, RUB: 0.07} return amount * exchange_rates[from_curr]簽名排錯若返回 “簽名無效”檢查參數(shù)排序是否升序、value 是否 URL 編碼、時間戳是否為毫秒級、AppSecret 是否正確頻率控制新增 Redis 限流邏輯參考京東 API 的限流代碼控制單接口 QPS≤5避免觸發(fā)平臺限流返回 429 錯誤。三、無接口權限時的合規(guī)爬蟲采集補充方案若暫未獲取 API 權限可通過爬蟲采集速賣通商品頁數(shù)據(jù)需嚴格遵守 robots 協(xié)議僅用于非商用監(jiān)控3.1 核心爬蟲代碼應對動態(tài)渲染python運行import requests from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC import time from fake_useragent import UserAgent class AliExpressSpider: def __init__(self): self.ua UserAgent() # 配置ChromeOptions反爬 self.options webdriver.ChromeOptions() self.options.add_argument(fuser-agent{self.ua.random}) self.options.add_argument(--headless) # 無頭模式 self.options.add_experimental_option(excludeSwitches, [enable-automation]) self.driver webdriver.Chrome(optionsself.options) self.driver.implicitly_wait(10) def get_product_data(self, product_url): 采集商品頁數(shù)據(jù)示例價格、名稱、運費 try: self.driver.get(product_url) # 等待價格元素加載應對JS動態(tài)渲染 price_elem WebDriverWait(self.driver, 15).until( EC.presence_of_element_located((By.CLASS_NAME, product-price-value)) ) # 提取數(shù)據(jù) product_name self.driver.find_element(By.CLASS_NAME, product-title-text).text.strip() current_price price_elem.text.strip().replace($, ) shipping_fee self.driver.find_element(By.CLASS_NAME, product-shipping-price).text.strip() return { product_name: product_name, current_price: current_price, shipping_fee: shipping_fee, url: product_url } except Exception as e: raise Exception(f爬蟲采集失敗{e}) finally: self.driver.quit() # 調用示例 if __name__ __main__: spider AliExpressSpider() product_url https://www.aliexpress.com/item/10050058089xxxx.html print(spider.get_product_data(product_url))3.2 爬蟲反爬應對策略IP 代理輪換使用跨境代理池如 911S5、BrightData避免單 IP 被封速賣通對境外 IP 更寬松境內 IP 易受限請求延遲每次請求間隔 10-15 秒避免高頻繞過檢測禁用 Chrome 自動化標識enable-automation配合隨機 User-Agent、Cookie 池。四、數(shù)據(jù)采集合規(guī)與風險控制合規(guī)底線僅采集公開商品數(shù)據(jù)禁止爬取用戶隱私、訂單信息數(shù)據(jù)僅用于自身價格監(jiān)控禁止倒賣、商用風險應對API 權限被限預留備用開發(fā)者賬號及時調整調用頻率爬蟲被封優(yōu)先切換至 API 方案或降低采集頻率數(shù)據(jù)延遲速賣通 API 數(shù)據(jù)延遲約 5-10 分鐘爬蟲數(shù)據(jù)為實時但穩(wěn)定性低建議兩者結合校驗。五、總結速賣通數(shù)據(jù)采集優(yōu)先選擇開放平臺 API穩(wěn)定、合規(guī)、數(shù)據(jù)完整爬蟲僅作為臨時補充方案核心需解決多站點 / 多幣種適配、簽名認證、運費模板解析三大問題同時嚴格控制調用頻率確保符合平臺規(guī)則。若需對接速賣通訂單、庫存等更深層數(shù)據(jù)可進一步申請高級接口權限并完善數(shù)據(jù)加密、日志監(jiān)控體系。
版權聲明: 本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若內容造成侵權/違法違規(guī)/事實不符,請聯(lián)系我們進行投訴反饋,一經(jīng)查實,立即刪除!

做視頻網(wǎng)站把視頻放在哪里做物理的網(wǎng)站

做視頻網(wǎng)站把視頻放在哪里,做物理的網(wǎng)站,免費php外貿網(wǎng)站模板,怎樣把html文件變成鏈接災備機制確保服務高可用#xff0c;即使單點故障也不影響業(yè)務連續(xù)性 在語音識別技術日益深入企業(yè)核心流程的今天#

2026/01/23 04:46:01

福田建網(wǎng)站公司動漫設計是什么

福田建網(wǎng)站公司,動漫設計是什么,東莞正規(guī)的人才市場,怎樣做彩票網(wǎng)站ESP32開發(fā)工具esptool#xff1a;從基礎燒錄到智能刷寫的技術演進之路 【免費下載鏈接】esptool 項目地址: h

2026/01/22 22:16:01