мой тебе совет. я такое проходил уже, так как наткнулся на такие же грабли. не знаю как в питоне но я писал на nodejs.
вот ооочень простой мой пример
async function startParser(url) { const browser = await phantom.create(['--ignore-ssl-errors=yes', '--load-images=no']); const page = await browser.createPage(); page.setting('userAgent', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.2062 Safari/537.36'); page.setting('resourceTimeout', '20000'); await page.property('viewportSize', { width: 1366, height: 700 }); try { const status = await page.open(url); await browser.exit(); } catch(e) { await browser.exit(); console.log(e); }}
смотри суть в чем. мы оборачиваем все ето дело в
try {} catch(e) {}
и теперь в любом случае процесс удаляется даже в случае ошибки. так как есть
await browser.exit();
в catch
выдает
{ default: { parseMusicsSearchBody: [Function: parseMusicsSearchBody], parseSuggestionsBody: [Function: parseSuggestionsBody], parsePlaylistsSearchBody: [Function: parsePlaylistsSearchBody], parsePlaylist: [Function: parsePlaylist], searchMusics: [Function: searchMusics], searchPlaylists: [Function: searchPlaylists], getSuggestions: [Function: getSuggestions], listMusicsFromPlaylist: [Function: listMusicsFromPlaylist] } }
и куда ето. вначале или в конце. как узнать PID?
у меня опенсервер. PHP 7.4
посмотрите что у вас приходит
$dataPOST = trim(file_get_contents('php://input'));file_put_contents(__DIR__.'/log.txt', $dataPOST, FILE_APPEND);
сделал по вашему примеру что в первом посте и по-своему и оба варианта работают.
string(50) "SimpleXMLElement Object
(
[message] => Test
)
"