script에서 var meta 값만 크롤링 해오거나 정규식으로 찾을방법이 없을까요?? 채택완료

<script>window.ShopifyAnalytics = window.ShopifyAnalytics || {};
window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
window.ShopifyAnalytics.meta.currency = 'USD';
var meta = {"products":[{"id":6684372729950,

>>>

스크립트에 id 클래스가 없으니 찾기가 너무 어렵네요 고수님들 도와주세요

답변 2개

채택된 답변
+20 포인트

explode 로 자르고 이어서 json 규칙만 맞춰주면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

$temp=explode("var meta = ",$html);
$temp=explode("';",$temp[1]);
$json_data = json_decode($temp[0],true);
print_r($json_data);

첨언하자면 정규식이 간편하고 좋은부분도 있는 방면
티끌하나 틀려지면 동작되지 않습니다.
더군다나 javascript variable 에 json 데이터가 대입되어있으니, 첨에 동작되다가
나중에 어떤 규칙을 만나서 동작이 안될 수 도 있구요.

그래서 명확한 데이터는 explode 로 해체하시는게 유지보수에도 좋습니다.
stackoverflow 등에서 검색하는 법을 잘 활용하시면 왠만한 문제는 답은
모두 있다고 생각되네요.

댓글을 작성하려면 로그인이 필요합니다.

밑에 질문에 답을 드렸는데 ㅜㅜ 계속 빙빙 돌고 계시네요. ㅜㅜ 안타깝네요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고