a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 90|回复: 0

[考试辅导] Oracle技术:怎样在oracle中通过utl_http获得指定网页内容

[复制链接]
发表于 2012-8-4 14:06:19 | 显示全部楼层 |阅读模式
SET serveroutput ON SIZE 40000   DECLARE
4 ]1 i! E! Q5 j/ ?  v_text varchar2(100) := '试验%S已ok';--不能有空白2 e1 ]. i! T! |7 Z, C/ [
  req    utl_http.req;
1 m2 ?( B, \2 F7 A! ]# f7 d  resp   utl_http.resp;
0 _" K8 {5 N3 y4 k  value  VARCHAR2(1000);8 G8 H4 p  ^* r3 ~8 y
  BEGIN
1 t$ O( k1 w0 D( M" A4 E  v_text := replace(v_text,'%','%25');+ u2 s; q/ e& i- k
  v_text := replace(utl_encode.text_encode(v_text), '=', '%');( N- W# N, o! z
  req    := utl_http.begin_request('http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=' ||
' g# {# F) p9 Q  }7 ]  v_text || '&langpair=zh|en');# j5 [+ l. k+ N: W" ^' U- F' S
  resp   := utl_http.get_response(req);3 u3 {4 c. @9 _
  LOOP
/ v  r0 L* k: H7 E+ X  utl_http.read_line(resp, value, TRUE);, X/ n4 Z$ x7 _6 Z. @0 p& \
  value := replace(value,'% S','%S');
+ b- e0 }/ S# D. i: X  value := replace(value,'{"responseData": {"translatedText":"','');
5 x; h0 h. v( h/ Q9 k* }  value := replace(value,'"}, "responseDetails": null, "responseStatus": 200}','');* j! `6 h5 }/ C) B! Q, l- u% S
  dbms_output.put_line(value);% b  k; U. R4 h; _4 Q
  END LOOP;/ ]# a: A2 i, d* K$ q
  utl_http.end_response(resp);) O# a  z/ }# t
  EXCEPTION
# R, e/ M# ]+ e# V. B  WHEN utl_http.end_of_body THEN9 s+ X5 s: f8 r/ y  O6 E; X: w3 `: s! E$ ]
  utl_http.end_response(resp);, i8 ]5 O1 R9 Z4 m& F, O
  END;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-18 14:59 , Processed in 0.709800 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表