我可以在服务器端通过Python或PHP在给定的URL上运行Javascript代码吗?

2024-04-26 11:24:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我现在正在构建一个网站,在这个网站中,我试图执行Javascript代码,以获得一个完全独立的网站的网页的特定元素,给出它的URL。我知道怎么用Selenium.Webdriver文件在我的笔记本电脑上用Python实现这一点:

driver = webdriver.Firefox()
driver.get(url)

price = driver.execute_script("var priceElements = document.getElementById('priceblock_ourprice'); var prices = []; for (var i = 0; i < 3; i++) { prices.push(priceElements.children[i].innerHTML); } var price = prices[1] + '.' + prices[2]; return price;")
driver.close()

它打开Firefox浏览器,运行JS,然后找到我想要的价格值。我知道也有一种方法是无头的,不需要打开浏览器,但是我正在尝试在我正在构建的网站上做类似的事情。你知道吗

有没有什么方法可以实现这个结果,但是代码不是在我的个人机器上运行,而是在apacheweb服务器上运行?我只是不确定,如果没有运行的机器有一个浏览器,它可以打开,这是可能的。你知道吗

我希望我对我所做的足够清楚,但如果有人需要澄清,那么我将很乐意回答你可能对这种情况有任何问题。你知道吗


Tags: 方法代码机器url元素网页网站var
1条回答
网友
1楼 · 发布于 2024-04-26 11:24:41

我对“lxml”和“urllib”做了类似的操作 举个例子:

from lxml import html
import urllib

pageLink = ""
page = urllib.urlopen(pageLink)
pageString = page.read()
pageContent = html.fromstring(pageString)
imgLink = pageContent.xpath('//img[@id="img-1"]/@src')[0]

相关问题 更多 >