Es ist jetzt eine Geschichte.
Ich möchte die Breite (px) des Div. Sie können es leicht auf der Browserseite mit JS bekommen, aber dieses Mal möchte ich es auf der Serverseite. Da es sich um die Breite des Div handelt, kann dies nach dem Rendern festgelegt werden. Also auf der Serverseite rendern. Früher habe ich etwas mit Selen gemacht, indem ich Firefox auf den Server gestellt habe, aber als ich Firefox installiert habe, hatte ich einen schlechten Speicher um das Display, also habe ich diesmal versucht, PhantomJS als Browser zu verwenden.
http://phantomjs.org/
PhantomJS is a headless WebKit scriptable with a JavaScript API. It has fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG.
Korrekt. tolle.
Erstellen Sie PhantomJS einfach so http://phantomjs.org/build.html Vielleicht, weil der Server diesmal CentOS5 war, hat es nicht funktioniert, und ich habe ihn in "git checkout 1.9" geändert und es lief reibungslos. Ich habe es eilig, also ist das vorerst in Ordnung ...
Als nächstes möchte ich dies von Selenium treffen
pip install selenium
from selenium import webdriver
url = 'http://hoge'
driver = webdriver.PhantomJS()
driver.get(url)
e = driver.find_element_by_xpath("//*[@class='hoge']")
print(e.size)
>>> {'width': 602, 'height': 2098}
Es sieht gut aus, weil es das Anzeigeergebnis auf meinem Chrome war. Das Ende