html - xpath怎样不包括某个节点?
PHPz
PHPz 2017-04-18 09:37:42
0
3
479

公司有30多个网站,因为G20怕被篡改。
写了个scrapy爬下30多个网站的<body>内容,然后保存json对比。
其中两个网站有访问人数统计,所以每次访问得到的数字都不一样,所以不能判断是否被篡改。
想到的方法是去除掉那两个网站的统计<p>
但是用Xpath始终没有成功。。

<p class="Copyright">
    <p><a href="/index">xxx</a>  
        <a href="#">xxx</a>  
        <a href="#">xx</a>  
        <a href="#">xx</a>  
        <a href="/xxx/nexxxfo/id/6xx4">联系我们</a> | 
        <a href="/xxx/nexxxfo/id/60xx">帮助中心</a><p> 
        <p>xxxx</p>
        <p>xxxxx 访问量:283444</p>
        <p style="width:300px;margin:0 auto 5px auto; ">
            <a target="_blank" href="h" style="dihxxxpx;">xxxx</p></a>
        </p>
    </p>
</p>

使用Xpath //body/*[not(contains(p/@class, 'Copyright'))]
另外也试了好多种方法。都不行
还有一个问题是,因为有两个页面,所以我不能只去除Copyright这个p还有一个叫m-content也要去除。。
请问如何操作。。

PHPz
PHPz

学习是最好的投资!

모든 응답(3)
巴扎黑

레귤러도 괜찮겠죠? 시도해 보셨나요?

左手右手慢动作
  1. contains는 태그 속성이나 텍스트만 일치할 수 있는 것 같습니다.

  2. xpath 대괄호 안에 and을 사용하여 조건을 병렬로 일치시킬 수 있습니다.

刘奇

xpath는 일치 및 불일치에 사용됩니다. 완전히 끌어낸 다음 불필요한 부분을 일치시키고 제거합니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!