使用简单的 dom 按名称获取 select

Use simple dom to get select by name

我正在尝试使用简单的 dom 按名称获取元素

这是为了抓取一个旧网站,他们只使用名称

<select name="id_items_1" required="">
    <option value="">Seleccione su talla</option>
    <option value="231085" data-talla="36" data-stock="3">36</option>
    <option value="231086" data-talla="37" data-stock="1">37</option>
</select>

我试过了,但它 returns null:

include('simple_html_dom.php');
$html = str_get_html($url);
$elem = $html->find('div[name=id_items_1]', 0);
var_dump($elem);

有什么简单的方法可以做到这一点 dom?

您需要先调用 file_get_contents 以获得远程 url 的 html,然后使用 select[name=id_items_1] option 找到您的选择器:

include('simple_html_dom.php');
$html = str_get_html(file_get_contents($url));
$elem = $html->find('select[name=id_items_1] option', 0);
var_dump($elem);

您必须更改为 file_get_html 并将 http:// 添加到 url

include('simple_html_dom.php'); 
$url="http://platanitos.com/Platanitos-ZC-LUCY-161-Negro-49272";; 
$html = file_get_html($url); 
$elem = $html->find('select[name=id_items_1]', 0)->innertext; 
var_dump($elem);