我最近纔剛剛開始用Python編寫代碼,所以如果事情最終成爲一個簡單的問題,並且我一直在查找錯誤的關鍵字,我就提前致歉。從Python中傳遞scraped page_source到PHP
本質上,我使用python和selenium創建一個刮板,並且只是想將DOM返回給PHP,以便我可以操作數據並將其插入到我的數據庫中。到目前爲止,我已經成功地檢索了python中的數據,但我的問題似乎在於將結果返回到PHP。我得到一個空白的結果。
我的代碼如下。
PHP
<?php
$result = exec('/usr/bin/python3 get_files.py');
print_r($result);
?>
的Python
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.common.exceptions import TimeoutException
import time
import json
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 800))
display.start()
chrome_options = Options()
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-setuid-sandbox")
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get('http://craiglist.com')
result = driver.find_element_by_xpath("//*").get_attribute("outerHTML")
driver.quit()
print('Hello World')
print(result)
現在我知道這是工作,因爲:
- 如果我直接執行python腳本, 「打印(結果)」 的作品完美。
- 如果我運行PHP文件,它會打印出Hello World。
所以這個問題似乎是我對如何在Python中準備結果的理解,以便可以傳遞給PHP。
我非常感謝您的協助或指引我朝着正確的方向發展。
非常感謝提前。
按照精確的文檔中有'selenium'沒有必要,如果你不必等待'頁JavaScript'執行。您可以簡單地['import requests'](http://docs.python-requests.org/en/master/),然後將頁面源代碼作爲'result = requests.get(「http://craiglist.com」) .content' – Andersson
@Andersson是的,那是真的。我在學習時只使用craiglist作爲例子。但我希望學習和使用硒,這樣我就可以在未來使用JavaScript加載網站。 –