Scrapy response.xpath 如何获取数字输出
Scrapy response.xpath how to get the number output
我想在 Scrapy 中获取一个数值而不是文本。请在代码“result-number-lg btn-number-details”中查看 - 输出 0156 数值。我该怎么做?
我试过了
response.xpath('//span[contains(@data-prize-type,"1")]/text()').getall()
输出是 {FirstPrize} 而不是 0156。
0156
enter image description here
FirstPrize
数据由 javascript 动态加载。这就是为什么要获取所需的数据,您必须使用诸如 selenium 之类的自动化工具。在这里我使用 selenium 并获得所需的输出如下:
import time
from selenium import webdriver
driver = webdriver.Chrome('chromedriver.exe')
url = "https://www.magnum4d.my/en/results"
driver.get(url)
time.sleep(15)
values =driver.find_elements_by_xpath('//*[@class="result-number-lg btn-number-details"]')
for v in values:
print(v.text)
输出:
0156
0590
6894
5691
4449
2699
7762
2968
9727
我想在 Scrapy 中获取一个数值而不是文本。请在代码“result-number-lg btn-number-details”中查看 - 输出 0156 数值。我该怎么做?
我试过了
response.xpath('//span[contains(@data-prize-type,"1")]/text()').getall()
输出是 {FirstPrize} 而不是 0156。
0156
enter image description here
FirstPrize
数据由 javascript 动态加载。这就是为什么要获取所需的数据,您必须使用诸如 selenium 之类的自动化工具。在这里我使用 selenium 并获得所需的输出如下:
import time
from selenium import webdriver
driver = webdriver.Chrome('chromedriver.exe')
url = "https://www.magnum4d.my/en/results"
driver.get(url)
time.sleep(15)
values =driver.find_elements_by_xpath('//*[@class="result-number-lg btn-number-details"]')
for v in values:
print(v.text)
输出:
0156
0590
6894
5691
4449
2699
7762
2968
9727