簡體   English   中英

使用 requests.get 后,我不能 g

[英]After using requests.get, I cannot g

我正在使用 python scrape 查找 LV 手提包是否有貨。 以下是我的代碼:

import requests
from lxml import etree


endpoint = 'https://us.louisvuitton.com/eng-us/products/graceful-pm-damier-azur-canvas-nvprod840045v'


headers = {
 'Connection': 'keep-alive',
 'Cache-Control': 'max-age=0',
 'sec-ch-ua': '"Google Chrome";v="89", "Chromium";v="89", ";Not A Brand";v="99"',
 'sec-ch-ua-mobile': '?0',
 'Upgrade-Insecure-Requests': '1',
 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36',
 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
 'Sec-Fetch-Site': 'same-origin',
 'Sec-Fetch-Mode': 'navigate',
 'Sec-Fetch-User': '?1',
 'Sec-Fetch-Dest': 'document',
 'Referer': 'https://bj.ke.com/',
 'Accept-Language': 'zh-CN,zh;q=0.9',
}      # hearders
lv_response = requests.get(endpoint,headers=headers) # request to get
content_lv = lv_response.text # to text


html_lv = etree.HTML(content_lv) # using lxml to transform to html
stock_check = html_lv.xpath("//div[@class='lv-product__price-stock']/span/text()") # to locate Item Unavailable, Check Back Soon

print(stock_check) # the result gives me an empty list

如代碼中所述,我首先使用瀏覽器中的檢查元素來查找關鍵字:Item Unavailable,Check Back Soon with Xpath。 在此處輸入圖像描述

然后在代碼中,我也嘗試定位文本 Item Unavailable, Check Back Soon with Xpath again,但它不會給我任何結果。

我做了一些研究。 該網站可能使用JavaScript,我應該使用Selenium,我沒有嘗試過Selenium。我想知道是否有任何方法可以用我現在的代碼找到關鍵字? 或者,如果您發現任何問題,請糾正我。 非常感謝!

所以我建議你使用Selenium 代碼變得如此簡單:

from selenium import webdriver
from time import sleep

dr = webdriver.Chrome()
dr.get("https://us.louisvuitton.com/eng-us/products/graceful-pm-damier-azur-canvas-nvprod840045v")

sleep(2)  # to load JS

stock_check  = dr.find_element_by_xpath("//div[@class='lv-product__price-stock']/span").text
print(stock_check)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM