美文网首页
PHP与Python抓取页面有那么大差别?

PHP与Python抓取页面有那么大差别?

作者: 封不然 | 来源:发表于2019-01-23 10:57 被阅读48次

“php是世界上最好的语言”
“人生苦短,我用python”

现在到处都能搜索到各种语言对喷的,啥静态语言喷脚本语言,还出了各种鄙视链,其实我个人是觉得真心是没必要,只要是在合适的时候使用合适的语言不就完了,我也在写php,也在写java和python,只是不同的场景下使用适合的形式解决问题就好了。

我实在是不理解,我用php写了个抓取页面服务以后,有人过来劝我说python会实现更好不用正则,吧啦吧啦吧啦的,但是这个功能就是写在一个小的单模块应用程序里,本来就是帮朋友做的小的站,你这个里面有python有php,后面交给别人的时候这······,本着这样的考虑,何必把问题上升到“技术栈是否完善”,“你到底懂不懂”这之类的,强行抬杠!?真不太懂。

我写了个简单的抓取网页然后匹配内容的,直接用python和php两种实现同样的功能,需要说明的是其实php也能用XPath

# php 版本 demo
<?php

$url = 'http://www.court.gov.cn/fabu-gengduo-16';
$result = [];
$doc = new \DOMDocument();

foreach (range(1, 1) as $page) {
    $html = file_get_contents($url . '?page=' . $page);
    @$doc->loadHTML($html);
    $doc->normalize();
    $xpath = new \DOMXpath($doc);
    $elements = $xpath->query('//*[@id="container"]/div/ul/li');
    for($i = 0; $i < $elements->length; $i++) {
        $result[] = [
            'title' => $elements->item($i)->getElementsByTagName('a')->item(0)->getAttribute('title'),
            'href' => $elements->item($i)->getElementsByTagName('a')->item(0)->getAttribute('href'),
            'date' => $elements->item($i)->getElementsByTagName('i')->item(0)->nodeValue,
        ];
    }
}

var_dump($result);

# python 版本 demo

import urllib3
from lxml import etree

url = 'http://www.court.gov.cn/fabu-gengduo-16'
http = urllib3.PoolManager()
result = []

for page in range(1, 2, 1):
    r = http.request('GET', url, fields={
        'page': page
    })
    html = etree.HTML(r.data.decode())
    html_data = html.xpath('//*[@id="container"]/div/ul/li')
    for elements in html_data:
        result.append({
            'date': elements.xpath('.//i/text()')[0],
            'title': elements.xpath('.//a/@title')[0],
            'href': elements.xpath('.//a/@href')[0],
        })

print(result)

emmm,可能php看起来多了点代码,这还是在没有用curl的情况,但是实话实说,你为了这一点代码,强行增假了项目维护难度以及学习成本,这值?这是极客思维?我有个问题想要问你,“我俏丽吗?”

无意喷语言的孰优孰劣,只想吐槽下,面对现实情景吧,语言的无脑粉。

相关文章

  • PHP与Python抓取页面有那么大差别?

    “php是世界上最好的语言”“人生苦短,我用python” 现在到处都能搜索到各种语言对喷的,啥静态语言喷脚本语言...

  • 分析Ajax抓取今日头条街拍美图(二)

    1043-Python-小组:李凯旋 抓取美图流程 获得索引页 解析索引页 获得详情页 解析详情页 存储、并下载 ...

  • PHP与Python程序交互

    php程序中与python脚本交互,使用python封装工具方法供php程序调用,数据分类、AI类可用python...

  • Python 3 实战Scrapy爬取美女壁纸图

    简介 之前写了一篇爬妹子图的文章《Python 3 实战Scrapy爬取妹子图》,但是有点粗糙,几乎都是无差别抓取...

  • Python实用练手小案例

    抓取网页信息,并生成txt文件内容!Python抓取网页技能——Python抓取网页就是我们常看见的网络爬虫,我们...

  • 浅谈爬虫

    1.什么是爬虫? 爬虫:就是抓取网页中的数据 2.为什么选择python做爬虫? 可以做爬虫的语言有很多,如PHP...

  • Python爬虫基础

    摘要:Python爬虫基础 前言 Python非常适合用来开发网页爬虫,理由如下: 1、抓取网页本身的接口 相比与...

  • Python抓取百度百科数据

    抓取策略 确定目标:确定抓取哪个网站的哪些页面的哪部分数据。本实例抓取百度百科python词条页面以及python...

  • Python抓取百度百科数据

    抓取策略 确定目标:确定抓取哪个网站的哪些页面的哪部分数据。本实例抓取百度百科python词条页面以及python...

  • python 简单爬取segmentFault 前100页数据进

    使用 urllib 和 BeautifulSoup pymysql 抓取页代码 统计页代码

网友评论

      本文标题:PHP与Python抓取页面有那么大差别?

      本文链接:https://www.haomeiwen.com/subject/brhjjqtx.html