ÀûÓÃPythonץȡºÍ½âÎöÍøÒ³(ÉÏ)
¶ÔËÑË÷ÒýÇæ¡¢ÎļþË÷Òý¡¢Îĵµ×ª»»¡¢Êý¾Ý¼ìË÷¡¢Õ¾µã±¸·Ý»òÇ¨ÒÆµÈÓ¦ÓóÌÐòÀ´Ëµ£¬¾³£Óõ½¶ÔÍøÒ³(¼´HTMLÎļþ)µÄ½âÎö´¦Àí¡£ÊÂʵÉÏ£¬Í¨¹ýPythonÓïÑÔÌṩµÄ¸÷ÖÖÄ£¿é£¬ÎÒÃÇÎÞÐè½èÖúWeb·þÎñÆ÷
»ò
ÕßWebä¯ÀÀÆ÷¾ÍÄܹ»½âÎöºÍ´¦ÀíHTMLÎĵµ¡£±¾ÎĽ«Ïêϸ½éÉÜÈçºÎÀûÓÃPythonץȡºÍ½âÎöÍøÒ³¡£Ê×ÏÈ£¬ÎÒÃǽéÉÜÒ»¸ö¿ÉÒÔ°ïÖú¼ò»¯´ò¿ªÎ»ÓÚ±¾µØºÍWeb
ÉϵÄHTMLÎĵµµÄPythonÄ£¿é£¬È»ºó£¬ÎÒÃÇÂÛÊöÈçºÎʹÓÃPythonÄ£¿éÀ´Ñ¸ËÙ½âÎöÔÚHTMLÎļþÖеÄÊý¾Ý£¬´Ó¶ø´¦ÀíÌØ¶¨µÄÄÚÈÝ£¬ÈçÁ´½Ó¡¢Í¼ÏñºÍ
CookieµÈ¡£×îºó£¬ÎÒÃÇ»á¸ø³öÒ»¸ö¹æÕûHTMLÎļþµÄ¸ñʽ±êÇ©µÄÀý×Ó£¬Í¨¹ýÕâ¸öÀý×ÓÄú»á·¢ÏÖʹÓÃpython´¦ÀíHTMLÎļþµÄÄÚÈÝÊǷdz£¼òµ¥µÄÒ»¼þ
ÊÂÇé¡£
¡¡¡¡Ò»¡¢½âÎöURL
¡¡¡¡Í¨¹ýPythonËù´øµÄurlparseÄ£¿é£¬ÎÒÃÇÄܹ»ÇáËɵذÑURL·Ö½â³ÉÔª¼þ£¬Ö®ºó£¬»¹Äܽ«ÕâЩԪ¼þÖØÐÂ×é×°³ÉÒ»¸öURL¡£µ±ÎÒÃÇ´¦ÀíHTML ÎĵµµÄʱºò£¬ÕâÏÄÜÊǷdz£·½±ãµÄ¡£
¡¡¡¡
import
urlparse
¡¡¡¡parsedTuple
=
urlparse.urlparse(
¡¡¡¡
"
http://www.google.com/search?
¡¡¡¡hl
=
en
&
q
=
urlparse
&
btnG
=
Google
+
Search
"
)
¡¡¡¡unparsedURL
=
urlparse.urlunparse((URLscheme, \
¡¡¡¡URLlocation, URLpath,
''
,
''
,
''
))
¡¡¡¡newURL
=
urlparse.urljoin(unparsedURL,
¡¡¡¡
"
/module-urllib2/request-objects.html
"
)
¡¡
¡¡º¯Êýurlparse(urlstring [, default_scheme [,
allow_fragments]])µÄ×÷ÓÃÊǽ«URL·Ö½â³É²»Í¬µÄ×é³É²¿·Ö£¬Ëü´ÓurlstringÖÐÈ¡µÃURL£¬²¢·µ»ØÔª×é (scheme,
netloc, path, parameters, query, fragment)¡£×¢Ò⣬·µ»ØµÄÕâ¸öÔª×é·Ç³£ÓÐÓã¬ÀýÈç¿ÉÒÔÓÃÀ´È·¶¨ÍøÂç
ÐÒé(HTTP¡¢FTPµÈµÈ )¡¢·þÎñÆ÷
µØÖ·¡¢Îļþ·¾¶£¬µÈµÈ¡£
¡¡
¡¡º¯Êýurlunparse(tuple)µÄ×÷ÓÃÊǽ«URLµÄ×é¼þ×°Åä³ÉÒ»¸öURL£¬Ëü½ÓÊÕÔª×é(scheme, netloc, path,
parameters, query, fragment)ºó£¬»áÖØÐÂ×é³ÉÒ»¸ö¾ßÓÐÕýÈ·¸ñʽµÄURL£¬ÒԱ㹩PythonµÄÆäËûHTML½âÎöÄ£¿éʹÓá£
¡¡
¡¡º¯Êýurljoin(base, url [, allow_fragments])
µÄ×÷ÓÃÊÇÆ´½ÓURL£¬ËüÒÔµÚÒ»¸ö²ÎÊý×÷ΪÆä»ùµØÖ·£¬È»ºóÓëµÚ¶þ¸ö²ÎÊýÖеÄÏà¶ÔµØÖ·Ïà½áºÏ×é³ÉÒ»¸ö¾ø¶ÔURLµØÖ·¡£º¯ÊýurljoinÔÚͨ¹ýΪURL»ùµØÖ·
¸½¼ÓеÄÎļþÃûµÄ·½Ê½À´´¦ÀíͬһλÖô¦µÄÈô¸ÉÎļþµÄʱºò¸ñÍâÓÐÓá£ÐèҪעÒâµÄÊÇ£¬Èç¹û»ùµØÖ·²¢·ÇÒÔ×Ö·û/½áβµÄ»°£¬ÄÇôURL»ùµØÖ·×îÓұ߲¿·Ö¾Í»á±»Õâ¸ö
Ïà¶Ô·¾¶ËùÌæ»»¡£±ÈÈ磬URLµÄ»ùµ
Ïà¹ØÎĵµ£º
ת×Ô http://www.javaeye.com/topic/561786
ÔÌû£ºhttp://www.cnblogs.com/jingleguo/archive/2008/06/02/1211820.html
µ±pythonÖм䴦Àí·ÇASCII±àÂëʱ£¬¾³£»á³öÏÖÈçÏ´íÎó£º
UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128)
0x??Êdz¬³ö128µÄÊý×Ö£¬pythonÔÚĬÈϵ ......
[root@pku-fan MySQL]# cat limbs.sql
CREATE DATABASE cookbook;
USE cookbook;
DROP TABLE IF EXISTS limbs;
CREATE TABLE limbs
(
thing VARCHAR(20), # what the thing is
legs INT, ......
int main()
{
int a[] = {1,2,3,4,5};
int i;
int * p = a;
for (p = a + 4, i = 0; i < 5; i++) {
printf("%d ",p[-i]);
}
return 0;
}
......
zz from ¡¶¿É°®µÄPython¡·
http://www.woodpecker.org.cn/
Python±ê×¼¿â http://www.woodpecker.org.cn:9081/doc/Python/_html/PythonStandardLib/
¼òÃ÷Python½Ì³Ì http://www.woodpecker.org.cn:9081/doc/abyteofpython_cn/chinese/index.html
Python¿ìËÙ½éÉÜ http://www.zoomquiet.org/share/s5/intropy/070322-intro ......