php实现12306余票查询、价格查询示例

代码如下:

<?php
/**
 * 车票接口类
 *
 * @author chepiao100
 *
 */
class chepiao100

 /**
  * 接口地址
  * @var string
  */
 private $_apiurl = 'http://www.chepiao100.com/api/';

/**
   * 返回接口数据
   *
   * @param string $method 接口方法
   * @param array $param 请求参数
   * @return mixed
  */
  function getData($method, $param)
  {
    $post = http_build_query($param);
    $html = $this->fetch_html($this->_apiurl.$method, $post);
    $jsonArr = json_decode($html, TRUE);
    if ( $jsonArr['errMsg'] == 'Y') {
      return $jsonArr['data'];
    } else {
      return $jsonArr['errMsg'];
    }
  }

/**
   * 请求HTTP
   *
   * @param string $url
   * @param string $post
   * @return mixed
   */
  function fetch_html($url, $post)
  {
   $ch = curl_init($url);
   curl_setopt($ch, CURLOPT_TIMEOUT, 60);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($ch, CURLOPT_POST, true);
   //curl_setopt($ch, CURLOPT_PROXY, 'http://10.100.10.100:3128');
   curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
   $html = curl_exec($ch);
   curl_close($ch);
   return $html;
  }
}
/** End class of chepiao100 **/

(0)

相关推荐

  • php实现12306火车票余票查询和价格查询(12306火车票查询)

    name.php 复制代码 代码如下: <?phpreturn array(        "北京北" => "VAP",        "北京东" => "BOP",        "北京" => "BJP",        "北京南" => "VNP",        "北京西" => &

  • 基于JS设计12306登录页面

    废话不多说了,直接给大家贴代码了,具体代码如下所示: <html> <head> <script> function f_validate() { var username=document.getElementById("uname").value; var passwd=document.getElementById("passwd").value; var yzm=document.getElementById("

  • Python模拟登录12306的方法

    本文实例讲述了Python模拟登录12306的方法.分享给大家供大家参考. 具体实现方法如下: 复制代码 代码如下: #!/usr/bin/python # -*- coding: utf-8 -*-   import re; import sys; import cookielib; import urllib; import urllib2; import optparse; import json; import httplib2; reload(sys) sys.setdefaulten

  • java抓取12306信息实现火车余票查询示例

    最近在弄一个微信的公众帐号,涉及到火车票查询,之前用的网上找到的一个接口,但只能查到火车时刻表,12306又没有提供专门的查票的接口.今天突然想起自己直接去12306上查询,抓取查询返回的数据包,这样就可以得到火车票的信息.这里就随笔记一下获取12306余票的过程. 首先,我用firefox浏览器上12306查询余票.打开firefox的Web控制台,选上网络中的"记录请求和响应主体" 然后输入地址日期信息之后点击网页上的查询按钮,就能在Web控制台下看到网页请求的地址了: 就是图片中

  • 教你用python实现12306余票查询

    python实现12306余票查询 我们说先在浏览器中打开开发者工具(F12),尝试一次余票的查询,通过开发者工具查看发出请求的包 余票查询界面 可以看到红框框中的URL就是我们向12306服务器发出的请求,那么具体是什么呢?我们来看看 [ https://kyfw.12306.cn/otn/leftTicket/queryZ?leftTicketDTO.train_date=2019-01-21&leftTicketDTO.from_station=CDW&leftTicketDTO.t

  • python自动查询12306余票并发送邮箱提醒脚本

    由于车票难抢,有时需要的车票已经售空,而我们需要捡漏,便可使用这个脚本. 具体实现了,自动查询某一车票的余票数量,当数量产生变化时,将自动发送QQ邮件到对于的邮箱进行提醒. 其中,发送邮箱的部分详情可参考我上一篇博文:Python 发送邮件 (smtp) QQ邮箱 脚本使用了python + selenium + chrome webdriver,需要先配置好三者的环境. 具体使用时候,需自行改变代码中的 邮箱信息.出发站.到达站.车次.日期.以及到相应查询页面中找到对应车票的html id:

  • php实现12306余票查询、价格查询示例

    复制代码 代码如下: <?php/** * 车票接口类 *  * @author chepiao100 * */class chepiao100{  /**  * 接口地址  * @var string  */ private $_apiurl = 'http://www.chepiao100.com/api/'; /**   * 返回接口数据   *    * @param string $method 接口方法   * @param array $param 请求参数   * @return

  • Python爬虫 12306抢票开源代码过程详解

    今天就和大家一起来讨论一下python实现12306余票查询(pycharm+python3.7),一起来感受一下python爬虫的简单实践 我们说先在浏览器中打开开发者工具(F12),尝试一次余票的查询,通过开发者工具查看发出请求的包 可以看到红框框中的URL就是我们向12306服务器发出的请求,那么具体是什么呢?我们来看看 https://kyfw.12306.cn/otn/leftTicket/queryZ?leftTicketDTO.train_date=2019-01-21&leftT

  • Python爬虫实战之12306抢票开源

    今天就和大家一起来讨论一下python实现12306余票查询(pycharm+python3.7),一起来感受一下python爬虫的简单实践 我们说先在浏览器中打开开发者工具(F12),尝试一次余票的查询,通过开发者工具查看发出请求的包 余票查询界面 可以看到红框框中的URL就是我们向12306服务器发出的请求,那么具体是什么呢?我们来看看 https://kyfw.12306.cn/otn/leftTicket/queryZ?leftTicketDTO.train_date=2019-01-2

  • python实现快递价格查询系统

    本文实例为大家分享了python实现快递价格查询系统的具体代码,供大家参考,具体内容如下 一.代码 #--author--张俊杰@Nick #系统提示 print("欢迎来到快递系统!") #死循环 while 1==1: #简单交互,键入值 weight=int(input("请输入重量(千克): ")) num=input("请输入地点编号(1.其它 2.东三省/宁夏/青海/海南 3.新疆/西藏 4.港澳台/国外):") #定义参数 p=0

  • python爬虫实现最新12306抢票

    1.环境 python 3.7谷歌浏览器chromedriver.exe(浏览器驱动程序,要与浏览器版本对应,并将其添加到环境变量或放到当前py文件所在目录下) 2.相关模块 time (用于某些地方对程序的强制等待)datatime (用于获取当前时间)selenium 3.1 自动化测试模块,这里用于操作浏览器) 3.思路 首先进行登录(支持手机扫码),登录完成进入页面之后,我们会看到有“温馨提示”的弹窗,即当前界面,我们需要处理第一次弹窗, 然后进入到菜单栏车票下的单程中(鼠标移动触发事件

  • python自动12306抢票软件实现代码

    昨天我发的是抓取的12306数据包,然后分析了一下,今天按照昨天的分析 用代码实现了,如果有需要的同学们可以看一下,实现的功能有,登录,验证码识别,自动查票,有余票点击预定, 差了最后一步提交订单.同学们可以自己研究一下. import requests import time import dmpt import re import random from copyheaders import headers_raw_to_dict DEFAULT_HEADERS={ 'Host':'kyfw

随机推荐