php根据isbn书号查询amazon网站上的图书信息的示例

插件说明:
插件根据提供的10位ISBN书号,在Amazon网站上查找该图书的详细信息。
如果找到结果,则返回一个两元素的数组,其中第一个元素是书的标题,而第二个元素是该书封面缩写图的URL地址。
它需要以下参数:$ISBN 10位ISBN书号

代码如下:

$isbn   = '007149216X';
$result = PIPHP_GetBookFromISBN($isbn);
if (!$result) echo "Could not find title for ISBN '$isbn'.";
else echo "<img src='$result[1]' align='left'><b>$result[0]";

function PIPHP_GetBookFromISBN($isbn)
{
   // Plug-in 93: Get Book From ISBN
   //
   // This plug-in looks up an ISBN-10 at Amazon.com and then
   // returns the matching book title and a thumbnail image
   // of the front cover. It requires this argument:
   //
   //    $isbn: The ISBN to look up
   //
   // Updated from the function in the book to take into
   // account changes to the Amazon HTML.

$find = '<meta name="description" content="Amazon:';
   $url  = "http://www.amazon.com/gp/aw/d.html?a=$isbn";
   $img  = 'http://ecx.images-amazon.com/images/I';

$page = @file_get_contents($url);
   if (!strlen($page)) return array(FALSE);

$ptr1 = strpos($page, $find) + strlen($find);
   if (!$ptr1) return array(FALSE);

$ptr2  = strpos($page, '" />', $ptr1);
   $title = substr($page, $ptr1, $ptr2 - $ptr1);

$find = $img;
   $ptr1  = strpos($page, $find) + strlen($find);
   $ptr2  = strpos($page, '"', $ptr1);
   $image = substr($page, $ptr1, $ptr2 - $ptr1);

return array($title, $img . $image);
}

(0)

相关推荐

  • javascript字符串与数组转换汇总

    数组转字符串 1.join()方法 var s= ["a", "d", "a", "f", "g", "f", "s", "g"]; s.join() //"a,d,a,f,g,f,s,g" s.join(" ") //"a d a f g f s g" s.join(''); //ada

  • JavaScript将字符串转换为整数的方法

    本文实例讲述了JavaScript将字符串转换为整数的方法.分享给大家供大家参考.具体如下: var s='1'; var s2='2'; alert(parseInt(s) parseInt(s2)); 希望本文所述对大家的javascript程序设计有所帮助.

  • JavaScript实现将UPC转换成ISBN的方法

    本文实例讲述了JavaScript实现将UPC转换成ISBN的方法.分享给大家供大家参考.具体实现方法如下: if (indexisbn.indexOf("978") == 0) { isbn = isbn.substr(3,9); var xsum = 0; var add = 0; var i = 0; for (i = 0; i < 9; i++) { add = isbn.substr(i,1); xsum += (10 - i) * add; } xsum %= 11;

  • JavaScript转换二进制编码为ASCII码的方法

    本文实例讲述了JavaScript转换二进制编码为ASCII码的方法.分享给大家供大家参考.具体如下: <html> <head> <script type="text/javascript"> var input_id = "bin_text"; var answer_id = "answer"; function convertToASCII() { var bin_text = document.getE

  • bookfind 通过ISBN序号获取图书连接的书名与作者的vbs代码

    核心代码: 复制代码 代码如下: If WScript.Arguments.UnNamed.Count <> 1 Then Syntax If WScript.Arguments.Named.Count > 1 Then Syntax blnTd = False If WScript.Arguments.Named.Count = 1 Then If UCase( WScript.Arguments.Named( 0 ) ) = "/TD" Then blnTd =

  • Javascript实现颜色rgb与16进制转换的方法

    本文实例讲述了Javascript实现颜色rgb与16进制转换的方法.分享给大家供大家参考.具体如下: 使用方法: Color(12,34,56); Color("#fff") Color("#defdcd") 实现代码: //颜色转换 var Color = function() { if (!(this instanceof Color)) { var color = new Color(); color._init.apply(color, arguments

  • Javascript进制转换实例分析

    本文实例讲述了Javascript进制转换的方法.分享给大家供大家参考.具体如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>进制转换</title> <script t

  • PHP校验ISBN码的函数代码

    详细资料可以参考:国际标准书号 – 维基百科,下面还是简述一下什么是ISBN码: 国际标准书号(International Standard Book Number,ISBN:拟发音is-ben),是国际通用的图书或独立的出版物(除定期出版的期刊)代码.出版社可以通过国际标准书号清晰的辨认所有非期刊书籍.一个国际标准书号只有一个或一份相应的出版物与之对应.新版本如果在原来旧版的基础上没有内容上太大的变动,在出版时也不会得到新的国际标准书号码.当平装本改为精装本出版时,原来相应的国际标准书号号码也

  • php根据isbn书号查询amazon网站上的图书信息的示例

    插件说明:插件根据提供的10位ISBN书号,在Amazon网站上查找该图书的详细信息.如果找到结果,则返回一个两元素的数组,其中第一个元素是书的标题,而第二个元素是该书封面缩写图的URL地址.它需要以下参数:$ISBN 10位ISBN书号 复制代码 代码如下: $isbn   = '007149216X';$result = PIPHP_GetBookFromISBN($isbn);if (!$result) echo "Could not find title for ISBN '$isbn'

  • 使用java技术抓取网站上彩票双色球信息详解

    前言 现在很多web应用,做过web项目的童鞋都知道,web结果由html+js+css组成,html结构都有一定的规范,数据动态交互可以通过js实现. 有些时候,需要抓取某一个你感兴趣的网站信息,一个网站信息肯定是通过某一个url,发送http请求,根据地址定位的,当知道这个地址,可以获取到很多的网络响应,需要认真分析,找到你那一个合适的地址,最后通过这个地址返回一个html给你,我们可以得到这个html,分析结构,解析这个结构获取你要的数据.Html的结构解析往往是复杂繁琐的,我们可以使用j

  • 给网站上的广告“加速”显示的方法

    网站建设-给网站上的广告"加速"的方法 第一种是采用iframe+html的方式调用.不管iframe插入在什么地方,加载网页的时候首先是先加载正文内容,然后才加载iframe里的东西.代码如下: <iframe src="15zone.cn" target="_blank">15zone.cn/blog/post/huazonghua-guanggao.html" target="_blank">

  • MySQL多表查询详解上

    时光在不经意间,总是过得出奇的快.小暑已过,进入中暑,太阳更加热烈的绽放着ta的光芒,...在外面被太阳照顾的人们啊,你们都是勤劳与可爱的人啊.在房子里已各种姿势看我这篇这章的你,既然点了进来,那就由我继续带你回顾MySql的知识吧! 回顾练习资料girls库以及两张表的脚本: 链接: https://pan.baidu.com/s/1bgFrP7dBBwk3Ao755pU4Qg 提取码: ihg7 引题:笛卡尔现象,先来观看一下两张表. SELECT * FROM boys; SELECT *

  • JS脚本实现定时到网站上签到/签退功能

    之前介绍过使用temperMonkey屏蔽CSDN广告的方法,主要就是要针对性地分析网站结构,然后用代码去改变或者操作DOM.今天也一样,我们需要观察网页结构,找到我们要操作的按钮,触发他的click事件就可以了.下面以公司打卡签到的网站为例,做一些坏坏的事情.本文读者最好有一定的HTML和JavaScript基础. 首先,想象一下你去签到需要做什么: 打开网站 登陆 点击"签到"按钮 然后每一步我们都可以让代码帮我们去做. 0. 如何定时 这段代码是核心,就是根据当前时间和设定的时间

  • Django框架搭建的简易图书信息网站案例

    本文实例讲述了Django框架搭建的简易图书信息网站.分享给大家供大家参考,具体如下: 创建Django项目,将数据库改为mysql,修改项目的urls.py文件 创建一个新应用,在应用里创建urls.py文件. 在应用的models.py里建表 from django.db import models # Create your models here. #一类 class BookInfo(models.Model): btitle=models.CharField(max_length=2

  • .NetCore实现上传多文件的示例详解

    本章和大家分享的是.NetCore的MVC框架上传文件的示例,主要讲的内容有:form方式提交上传,ajax上传,ajax提交+上传进度效果,Task并行处理+ajax提交+上传进度,相信当你读完文章内容后能后好的收获,如果可以不妨点个赞:由于昨天电脑没电了,快要写完的内容没有保存,今天早上提前来公司从头开始重新,断电这情况的确让人很头痛啊,不过为了社区的分享环境,这也是值得的,不多说了来进入今天的正篇环节吧: form方式上传一组图片 先来看看咋们html的代码,这里先简单说下要上传文件必须要

  • Python爬取网站图片并保存的实现示例

    先看看结果吧,去bilibili上拿到的图片=-= 第一步,导入模块 import requests from bs4 import BeautifulSoup requests用来请求html页面,BeautifulSoup用来解析html 第二步,获取目标html页面 hd = {'user-agent': 'chrome/10'} # 伪装自己是个(chrome)浏览器=-= def download_all_html(): try: url = 'https://www.bilibili

  • ssm实现视频的上传与播放的示例代码

    实现的功能: 1:实现视频的上传与播放. 2:使用shiro框架进行登录注册. 3:视频分页展示在页面上. 4:视频简介 5:视频评论 6:发表评论 简单介绍一下大概实现的思路: 首先主要的功能就是实现视频的上传与播放,那么我们就需要一个视频上传的界面,选择视频进行上传,那么上传到哪儿呢? 这里我们有多重选择,第一:我们可以将视频转换格式存在我们tomcat服务器里面,然后在数据库里面存入tomcat中对应的文件的路径.第二:我们可以使用nginx来存储我们的网页的静态资源.今天我就介绍上面一个

  • PHP实现文件上传和下载的示例代码

    目录 1.效果图 2.首先是封装好的图片类(缩放及生成水印) 1.GDBasic.php 2.Image.php 3.ajax类封装文件 1.index.php 2.图片相关功能处理 3.封装好的文件上传类 4.搜索功能实现 4.最后数据库格式 1.效果图 2.首先是封装好的图片类(缩放及生成水印) 1.GDBasic.php <?php /** * GDBasic.php * description GD基础类 */ namespace test\Lib; class GDBasic { pr

随机推荐