paip.uapi 获取网络url内容html 的方法java php ahk c++ python总结.



各种语言总结比较,脚本php.python果然是方便.简短,实用.

uapi : get_web_contents,file_get_contents

作者Attilax  艾龙,  EMAIL:1466519819@qq.com

来源:attilax的专栏

地址:http://blog.csdn.net/attilax



ahk

UrlDownloadToFile, URL, Filename



---------php:

$param= $_SERVER['QUERY_STRING'];

$url="http://latu.3g.cn/RP/EntLatu/photoappnav.php?".$param;

//echo $param;

$content=file_get_contents($url);

简评file_get_contents与curl 效率及稳定性(refer)

function curl_file_get_contents($durl){

   $ch = curl_init();

   curl_setopt($ch, CURLOPT_URL, $durl);

   curl_setopt($ch, CURLOPT_TIMEOUT, 5);

   curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);

   curl_setopt($ch, CURLOPT_REFERER,_REFERER_);

   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

   $r = curl_exec($ch);

   curl_close($ch);

   return $r;

 }

 

 



 --------python



     def getPage():

        url = 'http://topic.csdn.net/u/20101007/17/C17A944B-806B-4C78-9D20-EF4CF33F99AA.html'

        page = urllib.urlopen(url)

        html = page.readlines();

        return html

        

    ///添加头字段    

    def getPage(url):

        '''下载文件html代码,找出一楼的核心代码'''

        opener = urllib2.build_opener()

        #不加头信息则出现403错误和乱码

        opener.addheaders = [('User-agent', 'Mozilla/5.0')];

        htmlAll = opener.open( url ).read()

        reg1Floor = '<div class="msgfont">(.*?)</div>'

        html = re.search(reg1Floor,htmlAll)

        html = html.group()

        #文件保存编码和文件编辑编码都是utf-8,所以decode一次,不然会出现乱码,但是不影响结果。

        return html.decode('utf-8')





---------c++

 QString  atiNet::getHtml(QString url)

   {

       QNetworkAccessManager *manager = new QNetworkAccessManager();

       QNetworkReply *reply = manager->get(QNetworkRequest(QUrl(url)));

       QByteArray responseData;

       QEventLoop eventLoop;

       connect(manager, SIGNAL(finished(QNetworkReply*)), &eventLoop, SLOT(quit()));

       eventLoop.exec();       //block until finish

       responseData = reply->readAll();

       return QString(responseData);

   }



参考

paip.c++ qt 网页爬虫 的 网络编程 总结 - c++语言程序开发技术文章_c++编程

paip.uapi 获取网络url内容html 的方法java php ahk c++ python总结.的更多相关文章

  1. 【转】PHP获取重定向URL的几种方法

    有时候我们会在开发中,经常会遇到有URL 301或 302重定向的情况,这时候我们可能需要获取重定向之后的url,下面我们介绍一下几种获取重定向url的方法: 1.用get_headers函数php自 ...

  2. iOS获取网络类型的四种方法

    Reachability类只能区分WIFI和WWAN类型,却无法区分2G网和3G网. 网上也有些方法,却都存在Bug. 经过网上查找资料和测试,基本上总结了以下几种方法: 1.使用导航栏的方式:(私有 ...

  3. 三个获取浏览器URL中参数值的方法

    这三个是一般的获取浏览器传的参数值的方法,之前有用unescape()解码的方法,但是遇到汉字会产生乱码,所以用decodeURI(); 方法一: function getQueryString(na ...

  4. 获取地址栏URL中参数, getQuerySting()方法

    今天同事用的以前的获取url地址参数获取不到.以前的方法失效了.后面发现是正则表达式bug: 第一种获取方法(针对普通情况的一般够用): function getQueryString(name) { ...

  5. js中获取当前url参数值的一个方法

    var $_GET = (function(){             var url = window.document.location.href.toString();//获得当前url地址并 ...

  6. [第三方]SCNetworkReachability 获取网络状态控件使用方法

    用Cocoa Pods导入控件以后 直接导头文件 复制以下代码 [SCNetworkReachability host:@"github.com" reachabilityStat ...

  7. JS如何获取地址栏url后面的参数?

    本文不再更新,可能存在内容过时的情况,实时更新请移步我的新博客:JS如何获取地址栏url后面的参数?: 这里提供了两种获取地址栏url后面参数的方法: 方式1 传参: window.location. ...

  8. Java中获取键盘输入值的三种方法

    Java中获取键盘输入值的三种方法     Java程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值 ...

  9. Python基于正则表达式实现文件内容替换的方法

    Python基于正则表达式实现文件内容替换的方法 本文实例讲述了Python基于正则表达式实现文件内容替换的方法.分享给大家供大家参考,具体如下: 最近因为有一个项目需要从普通的服务器移植到SAE,而 ...

随机推荐

  1. Android支付之支付宝封装类

    今天介绍下在android中如何集成支付宝支付到自己的APP中去.让APP能够拥有方便,快捷的支付功能. 我们在做Android支付的时候肯定会用到支付宝支付,根据官方给出的demo做起来非常费劲,所 ...

  2. Codeforces Round #325 垫底纪念

    A. Alena's Schedule 间隔0长度为1被记录  1被记录  其余不记录 #include <iostream> #include <cstring> #incl ...

  3. UVA 11624 Fire!(广度优先搜索)

    题目大意:在一个N*M的迷宫内,J代表某人(只有一个),F代表火(可能不只一个),#代表墙,火每分钟会向四周除了墙以外的地方扩散一层,问人能否在没被火烧到 之前逃出迷宫,若能逃出输出最短时间.很明显的 ...

  4. .net获取IP和MAC地址

    获取IP  解决request.UserHostAddress取不到真实IP private string GetClientIP()   {    string result = HttpConte ...

  5. jqyery dataTable 基本用法

    一:官方网站:[http://www.datatables.net/] 二:基本使用:[http://www.guoxk.com/node/jquery-datatables] 1.DataTable ...

  6. oracle 用户的管理<二>

    oracle 用户的管理 创建用户 概述:在 oracle 中要创建一个新的用户使用 create user 语句,一般是具有 dba(数据库管理员)的权限才能使用. create user 用户名 ...

  7. oracle 中文乱码---查看和修改客户端字符集

    客户端NLS_LANG的设置方法 Windows: # 常用中文字符集set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK # 常用unicode字符集 set ...

  8. ASP.NET反射(转载)

    两个现实中的例子:1.B超:大家体检的时候大概都做过B超吧,B超可以透过肚皮探测到你内脏的生理情况.这是如何做到的呢?B超是B型超声波,它可以透过肚皮通过向你体内发射B型超声波,当超声波遇到内脏壁的时 ...

  9. css3 transform的基本用法和介绍

    <style>/* 最简单的一个transition动画 .box{width:100px;height:100px;border:1px solid;background:green;- ...

  10. LVS三种模式配置及优点缺点比较

    目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种(LVS-DR,LVS-NAT,LVS-TUN)模式的简要配置 LVS是什么: http://www.lin ...