a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 89|回复: 0

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

[复制链接]
发表于 2012-8-4 14:06:19 | 显示全部楼层 |阅读模式
SET serveroutput ON SIZE 40000   DECLARE/ @4 c# K1 z$ O. i( t* J4 {" s
  v_text varchar2(100) := '试验%S已ok';--不能有空白3 N+ s5 o7 H: J6 e
  req    utl_http.req;5 B# e" J& {! O) z& M  p
  resp   utl_http.resp;
: ^* E, @% y; I( {  value  VARCHAR2(1000);* d" O9 A$ i6 {9 B6 v% h
  BEGIN% L3 @! h3 G/ c
  v_text := replace(v_text,'%','%25');
/ f( h9 n' _) U4 {7 M  v_text := replace(utl_encode.text_encode(v_text), '=', '%');
! Z$ D) j! z" U. |. _/ M  req    := utl_http.begin_request('http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=' ||
8 S1 z/ T' {9 V$ J% I* E  v_text || '&langpair=zh|en');, D3 C* L+ k$ L* C6 W: j; c
  resp   := utl_http.get_response(req);
, K5 k; s* Y9 a7 m6 P5 A- u  LOOP, Z5 Q1 B7 w& N
  utl_http.read_line(resp, value, TRUE);
6 B  `. ]# B& m8 W5 d/ G3 y$ J  value := replace(value,'% S','%S');
: W* H) A$ F3 l: M/ D4 \  value := replace(value,'{"responseData": {"translatedText":"','');% l9 t) q, C1 O# I! B% J+ V" E
  value := replace(value,'"}, "responseDetails": null, "responseStatus": 200}','');+ b: S: |9 ]- l0 I5 O9 F( K* D
  dbms_output.put_line(value);" A; \+ b6 D' j6 Q
  END LOOP;
% R% ^+ r: D, R. S2 e  utl_http.end_response(resp);, x; B0 _4 n( w8 x6 {& I
  EXCEPTION
4 i5 n; `1 K" ~0 _0 C  WHEN utl_http.end_of_body THEN
0 A1 x; n! a' u6 G+ {: ^/ A" p  utl_http.end_response(resp);  Y, n* B+ Y) n# Z/ h( |" s5 X
  END;
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-5 23:28 , Processed in 0.149876 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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