cUrl PHP를 사용하여 지정된 행을 얻는 방법

자키

안녕하세요, curl을 사용하여 웹 외부 서버와 통신하지만 응답 유형은 html이므로 json 코드 (4000 행 이상)로 변환 할 수 있었지만 결과가 포함 된 특정 행을 얻는 방법을 모릅니다. 어떤 생각?

내 cUrl 코드는 다음과 같습니다.

require_once('getJson.php');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.reputationauthority.org/domain_lookup.php?ip=website.com&Submit.x=9&Submit.y=5&Submit=Search');
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$data = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$data = '<<<EOF'.$data.'EOF';
$json = new GetJson();
header("Content-Type: text/plain");
$res = json_encode($json->html_to_obj($data), JSON_PRETTY_PRINT);
$myArray = json_decode($res,true);

getJson.php의 경우

class GetJson{

    function html_to_obj($html) {
        libxml_use_internal_errors(true);
        $dom = new DOMDocument();
        $dom->loadHTML($html);
        return $this->element_to_obj($dom->documentElement);
    }
    function element_to_obj($element) {
        if ($element->nodeType == XML_ELEMENT_NODE){                    
            $obj = array( "tag" => $element->tagName );
            foreach ($element->attributes as $attribute) {
                $obj[$attribute->name] = $attribute->value;
            }
            foreach ($element->childNodes as $subElement) {
                if ($subElement->nodeType == XML_TEXT_NODE) {
                    $obj["html"] = $subElement->wholeText;
                }
                else {
                    $obj["children"][] = $this->element_to_obj($subElement);
                }   
            }
            return $obj;
        }
    }
}

내 아이디어는 lign 2175를 달성하기 위해 행 찾아보기 대신에 (예 : $ data [ 'children'] [2] [ 'children'] [7] [ 'children'] [3] [ 'children'] [1] [ 'children'] [1] [ 'children'] [0] [ 'children'] [1] [ 'children'] [0] [ 'children'] [1] [ 'children'] [2] [ ' children '] [0] ['children '] [0] ['html ']은 나에게 좋은 생각이 아닙니다.) 직접 이동하고 싶습니다.

에이디 슨

반환되는 HTML이 매번 일관된 구조를 갖고 있고 그 일부에서 특정 값을 하나만 원하는 경우 정규식을 사용하여 HTML을 구문 분석하고 필요한 부분을 찾을 수 있습니다. 이것은 모든 것을 배열에 넣으려는 대안입니다. HTML 문서를 구문 분석하고 특정 항목을 찾기 위해 이전에이 기술을 사용했습니다. 여기에 간단한 예가 있습니다. 찾고있는 데이터의 정확한 특성을 지정하지 않았기 때문에 필요에 맞게 조정해야합니다. 올바른 비트를 찾으려면 여러 수준의 구문 분석을 내려야 할 수 있습니다.

$data = curl_exec($ch);
//Split the output into an array that we can loop through line by line
$array = preg_split('/\n/',$data);
//For each line in the output
foreach ($array as $element)
{
    //See if the line contains a hyperlink
    if (preg_match("/<a href/", "$element"))
    {
         ...[do something here, e.g. store the data retrieved, or do more matching to find something within it]...
    }

}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

PHP : cURL을 사용하여 웹 페이지의 기본 URL을 얻는 방법

분류에서Dev

PHP에서 curl xpath를 사용하여 웹 사이트에서 특정 사진을 얻는 방법

분류에서Dev

curl을 사용하여 이미지를 얻는 방법은 무엇입니까?

분류에서Dev

curl을 사용하여 Alexa 청중 지리를 얻는 방법은 무엇입니까?

분류에서Dev

cURL을 사용하여 json 문자열 및 헤더 요소를 얻는 방법

분류에서Dev

Net : HTTP를 사용하여이 curl 명령을 실행하는 방법

분류에서Dev

curl을 사용하여 PHP 변수를 다른 페이지에 게시하는 방법은 무엇입니까?

분류에서Dev

reactjs를 사용하여 json 파일의 마지막 행을 얻는 방법

분류에서Dev

curl을 사용하여 키로 특정 문서를 보는 방법

분류에서Dev

PHP curl을 사용하여 www.yahoo.com 페이지를 가져 오는 방법은 무엇입니까?

분류에서Dev

curl_easy를 사용하여 --compressed curl 명령 옵션을 설정하는 방법은 무엇입니까?

분류에서Dev

PHP를 사용하여 정확한 시간대 값을 얻는 방법

분류에서Dev

PHP를 사용하여 URL의 특정 부분을 얻는 방법

분류에서Dev

XSLT를 사용하여 방정식을 수행하는 방법

분류에서Dev

PHP를 사용하여 mysql에서 지난주 항목을 얻는 방법

분류에서Dev

정규식을 사용하여 숫자를 얻는 방법

분류에서Dev

jsoup을 사용하여 특정 div를 얻는 방법

분류에서Dev

Javascript를 사용하여 가운데에서 처음 10 행, 마지막 3 행 및 2 행을 얻는 방법

분류에서Dev

PHP와 curl을 사용하여 Windows ping과 동일한 방식으로 ping을 수행하는 방법

분류에서Dev

지정된 단계를 사용하여 행렬의 열을 선택하는 방법

분류에서Dev

PHP / Curl을 사용하여 프레임 내에서 HTML을 얻는 방법은 무엇입니까?

분류에서Dev

curl을 사용하여 PHP에서 최신 리디렉션 URL을 얻는 방법

분류에서Dev

정규식을 사용하여 PHP에서 여러 수식을 얻는 방법

분류에서Dev

정규식을 사용하여 PHP에서 여러 수식을 얻는 방법

분류에서Dev

PHP cURL을 사용하여 수동으로 '양식 제출'을 수행하는 방법은 무엇입니까?

분류에서Dev

select를 사용하여 목록이 포함 된 x 파일에서 선택하는 방법, 명령 집합을 실행하는 데 필요한 (이 경우 curl)

분류에서Dev

MySQL을 사용하여 PHP에서 표를 얻는 방법

분류에서Dev

PHP를 사용하여 mysql에서 값을 얻는 방법?

분류에서Dev

PHP 코드를 사용하여 UberCart 버전을 얻는 방법

Related 관련 기사

  1. 1

    PHP : cURL을 사용하여 웹 페이지의 기본 URL을 얻는 방법

  2. 2

    PHP에서 curl xpath를 사용하여 웹 사이트에서 특정 사진을 얻는 방법

  3. 3

    curl을 사용하여 이미지를 얻는 방법은 무엇입니까?

  4. 4

    curl을 사용하여 Alexa 청중 지리를 얻는 방법은 무엇입니까?

  5. 5

    cURL을 사용하여 json 문자열 및 헤더 요소를 얻는 방법

  6. 6

    Net : HTTP를 사용하여이 curl 명령을 실행하는 방법

  7. 7

    curl을 사용하여 PHP 변수를 다른 페이지에 게시하는 방법은 무엇입니까?

  8. 8

    reactjs를 사용하여 json 파일의 마지막 행을 얻는 방법

  9. 9

    curl을 사용하여 키로 특정 문서를 보는 방법

  10. 10

    PHP curl을 사용하여 www.yahoo.com 페이지를 가져 오는 방법은 무엇입니까?

  11. 11

    curl_easy를 사용하여 --compressed curl 명령 옵션을 설정하는 방법은 무엇입니까?

  12. 12

    PHP를 사용하여 정확한 시간대 값을 얻는 방법

  13. 13

    PHP를 사용하여 URL의 특정 부분을 얻는 방법

  14. 14

    XSLT를 사용하여 방정식을 수행하는 방법

  15. 15

    PHP를 사용하여 mysql에서 지난주 항목을 얻는 방법

  16. 16

    정규식을 사용하여 숫자를 얻는 방법

  17. 17

    jsoup을 사용하여 특정 div를 얻는 방법

  18. 18

    Javascript를 사용하여 가운데에서 처음 10 행, 마지막 3 행 및 2 행을 얻는 방법

  19. 19

    PHP와 curl을 사용하여 Windows ping과 동일한 방식으로 ping을 수행하는 방법

  20. 20

    지정된 단계를 사용하여 행렬의 열을 선택하는 방법

  21. 21

    PHP / Curl을 사용하여 프레임 내에서 HTML을 얻는 방법은 무엇입니까?

  22. 22

    curl을 사용하여 PHP에서 최신 리디렉션 URL을 얻는 방법

  23. 23

    정규식을 사용하여 PHP에서 여러 수식을 얻는 방법

  24. 24

    정규식을 사용하여 PHP에서 여러 수식을 얻는 방법

  25. 25

    PHP cURL을 사용하여 수동으로 '양식 제출'을 수행하는 방법은 무엇입니까?

  26. 26

    select를 사용하여 목록이 포함 된 x 파일에서 선택하는 방법, 명령 집합을 실행하는 데 필요한 (이 경우 curl)

  27. 27

    MySQL을 사용하여 PHP에서 표를 얻는 방법

  28. 28

    PHP를 사용하여 mysql에서 값을 얻는 방법?

  29. 29

    PHP 코드를 사용하여 UberCart 버전을 얻는 방법

뜨겁다태그

보관