帮我调试一下url = 'https://item.jd.com/100008348542.html' # 商品详情页链接 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} from selenium import webdriver # 设置浏览器选项 options = webdriver.ChromeOptions() options.add_argument('headers') # options.add_argument('--no-sandbox') # options.add_argument('--disable-dev-shm-usage') # 打开浏览器并访问页面 browser = webdriver.Chrome(options=options) browser.get(url) # /html/body/div[6]/div/div[2]/div[4]/div/div[1]/div[2]/span[1]/span[2] # 定位价格标签并获取价格 price_element = browser.find_elements_by_xpath('/html/body/div[6]/div/div[2]/div[4]/div/div[1]/div[2]/span[1]/span[2]') price = price_element.text print(price)
时间: 2023-06-17 11:03:24 浏览: 189
详解axios在node.js中的post使用
您的代码有一些问题,可以尝试以下修改:
1. 将 `options.add_argument('headers')` 修改为 `options.add_argument(headers)`,这样就可以将请求头信息传递给浏览器。
2. 将 `find_elements_by_xpath` 修改为 `find_element_by_xpath`,因为您只需要获取一个元素的文本,而不是多个。
修改后的代码如下:
```python
url = 'https://item.jd.com/100008348542.html' # 商品详情页链接
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
from selenium import webdriver
# 设置浏览器选项
options = webdriver.ChromeOptions()
options.add_argument(headers)
# 打开浏览器并访问页面
browser = webdriver.Chrome(options=options)
browser.get(url)
# 定位价格标签并获取价格
price_element = browser.find_element_by_xpath('/html/body/div[6]/div/div[2]/div[4]/div/div[1]/div[2]/span[1]/span[2]')
price = price_element.text
print(price)
```
希望能帮到您!
阅读全文