├── .idea ├── Common_crawler.iml ├── misc.xml ├── modules.xml ├── vcs.xml └── workspace.xml ├── Common_crawler ├── __init__.py ├── __pycache__ │ ├── __init__.cpython-36.pyc │ ├── items.cpython-36.pyc │ ├── middlewares.cpython-36.pyc │ ├── pipelines.cpython-36.pyc │ └── settings.cpython-36.pyc ├── dbhelper.py ├── items.py ├── middlewares.py ├── pipelines.py ├── settings.py └── spiders │ ├── Common_crawler.py │ ├── __init__.py │ └── __pycache__ │ ├── Common_crawler.cpython-36.pyc │ └── __init__.cpython-36.pyc ├── README.md ├── __pycache__ └── config.cpython-36.pyc ├── config.py ├── info.json ├── requirements.txt ├── scrapy.cfg └── start.py /.idea/Common_crawler.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 11 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 41 | 42 | 47 | 48 | 49 | 50 | 51 | true 52 | DEFINITION_ORDER 53 | 54 | 55 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 |
[Ctrl+A \u5168\u9009 \u6ce8:\u5982\u9700\u5f15\u5165\u5916\u90e8Js\u9700\u5237\u65b0\u624d\u80fd\u6267\u884c]\n\n"} 12 | {"log_Intro": "AspJpeg V1.5.0 \u7834\u89e3\u7248", "log_Title": "AspJpeg V1.5.0 \u7834\u89e3\u7248_ASP\u57fa\u7840", "log_Content": "
\n

AspJpeg V1.5.0 \u7834\u89e3\u7248

\n
aspjpeg\u7ec4\u4ef6\u4f7f\u7528\u65b9\u6cd5
\n
aspjpeg\u662f\u4e00\u6b3e\u975e\u5e38\u5f3a\u5927\u7684\u56fe\u7247\u5904\u7406\u7ec4\u4ef6\uff0c\u7eaf\u82f1\u6587\u7248\u672c\u3002\u4e0d\u8fc7\u65e9\u5df2\u7ecf\u6709\u514d\u8d39\u7248\u548c\u7834\u89e3\u7248\uff0c\u4f46\u662f\u5bf9\u5176\u8fdb\u884c\u8be6\u7ec6\u4e0e\u6df1\u5165\u4ecb\u7ecd\u7684\u6587\u7ae0\u5374\u662f\u4e0d\u591a\uff0c\u5373\u4f7f\u6709\u4e5f\u53ea\u7275\u6d89\u5230\u56fe\u7247\u7f29\u7565\u548c\u56fe\u7247\u6c34\u5370\u3002\u53ef\u80fd\u662f\u56e0\u4e3a\u7eaf\u82f1\u6587\u7684\u7f18\u6545\u3002

\u4f7f\u7528aspjepg\u4e3b\u8981\u53ef\u4ee5\u505a\u5230:
\u56fe\u7247\u7f29\u7565
\u56fe\u7247\u6c34\u5370
\u5b89\u5168\u7801\u6280\u672f
\u56fe\u7247\u5207\u5272
\u56fe\u7247\u5408\u5e76
\u6570\u636e\u5e93\u652f\u6301

\u4e00\u3001\u56fe\u7247\u7f29\u7565 .

<%
Set Jpeg = Server.CreateObject(\"Persits.Jpeg\") \u8c03\u7528\u7ec4\u4ef6
Path = Server.MapPath(\"images\") & \"\\clock.jpg\" \u5f85\u5904\u7406\u56fe\u7247\u8def\u5f84
Jpeg.Open Path \u6253\u5f00\u56fe\u7247
\u9ad8\u4e0e\u5bbd\u4e3a\u539f\u56fe\u7247\u76841/2
Jpeg.Width = Jpeg.OriginalWidth / 2
Jpeg.Height = Jpeg.OriginalHeight / 2
\u4fdd\u5b58\u56fe\u7247
Jpeg.Save Server.MapPath(\"images\") & \"\\clock_small.jpg\"
%>
<IMG SRC=\"images/clock_small.jpg\"> \u67e5\u770b\u5904\u7406\u7684\u56fe\u7247 .

\u4e8c\u3001\u56fe\u7247\u6c34\u5370 .

<%
Set Jpeg = Server.CreateObject(\"Persits.Jpeg\")
Jpeg.Open Server.MapPath(\"images/dodge_viper.jpg\")
\u5f00\u59cb\u5199\u6587\u5b57
Jpeg.Canvas.Font.Color = &000000'' red \u989c\u8272
Jpeg.Canvas.Font.Family = \"Courier New\" \u5b57\u4f53
Jpeg.Canvas.Font.Bold = True \u662f\u5426\u52a0\u7c97
Jpeg.Canvas.Print 10, 10, \"Copyright (c) XYZ, Inc.\"
\u6253\u5370\u5750\u6807x \u6253\u5370\u5750\u6807y \u9700\u8981\u6253\u5370\u7684\u5b57\u7b26
\u4ee5\u4e0b\u662f\u5bf9\u56fe\u7247\u8fdb\u884c\u8fb9\u6846\u5904\u7406
Jpeg.Canvas.Pen.Color = &H000000;'' black \u989c\u8272
Jpeg.Canvas.Pen.Width = 2 \u753b\u7b14\u5bbd\u5ea6
Jpeg.Canvas.Brush.Solid = False \u662f\u5426\u52a0\u7c97\u5904\u7406
Jpeg.Canvas.Bar 1, 1, Jpeg.Width, Jpeg.Height
\u8d77\u59cbX\u5750\u6807 \u8d77\u59cbY\u5750\u6807 \u8f93\u5165\u957f\u5ea6 \u8f93\u5165\u9ad8\u5ea6
Jpeg.Save Server.MapPath(\"images/dodge_viper_framed.jpg\") \u4fdd\u5b58
%> .

\u4e09\u3001\u5b89\u5168\u7801 .

\u5b89\u5168\u739b\u7684\u9053\u7406\u548c\u52a0\u6c34\u5370\u5dee\u4e0d\u591a\u3002

<%
\u751f\u6210\u5b89\u5168\u7801\u7684\u51fd\u6570
function make_randomize(max_len,w_n) max_len \u751f\u6210\u957f\u5ea6\uff0cw_n\uff1a0 \u53ef\u80fd\u5305\u542b\u5b57\u6bcd\uff0c1\uff1a\u53ea\u4e3a\u6570\u5b57
randomize
for intcounter=1 to max_len
whatnext=int((1-0+1)*rnd+w_n)
if whatnext=0 then
upper=122
lower=97
else
upper=57
lower=48
end if
strnewpass=strnewpass & chr(int((upper-lower+1)*rnd)+lower)
next
make_randomize=strnewpass
end function
%> .

\u751f\u6210\u5b89\u5168\u7801\u7684\u56fe\u7247\u3002
<%random_num=make_randomize(4,1) \u751f\u62104\u4f4d\u6570\u5b57\u7684\u5b89\u5168\u7801
session(\"random_num\")=random_num \u4e3a\u4ec0\u4e48\u8c03\u7528session\uff0c\u6ca1\u6709session\u7684\u5b89\u5168\u7801\u662f\u5b8c\u5168\u6ca1\u6709\u610f\u4e49\u7684\u3002\u5475\u5475 .

Set Jpeg = Server.CreateObject(\"Persits.Jpeg\") \u8c03\u7528\u7ec4\u4ef6
Jpeg.Open Server.MapPath(\"infos/random_pic/random_index.gif\") \u6253\u5f00\u51c6\u5907\u7684\u56fe\u7247
Jpeg.Canvas.Font.Color = &H006699;
Jpeg.Canvas.Font.Family = \"Arial Black\"
Jpeg.Canvas.Font.Bold = false
Jpeg.Canvas.PrintText 0, -2, random_num
jpeg.save Server.MapPath(\"infos/random_pic/random_index.bmp\") \u4fdd\u5b58
%>
<img src=\"infos/random_pic/random_index.bmp\" border=\"0\" align=\"absmiddle\">


\u56db\u3001\u56fe\u7247\u5207\u5272 .

\u4e00\u76f4\u4ee5\u6765\uff0c\u5bf9aspjpeg\u4e0d\u4e86\u89e3\u7684\u4eba\u4ee5\u4e3a\u662f\u65e0\u6cd5\u7528\u5b83\u6765\u8fdb\u884c\u5207\u5272\u7684\u3002
\u5176\u5b9e\u6709\u8fd9\u6837\u7684\u4e00\u4e2a\u65b9\u6cd5\u7684
crop x1,y1,x2,y2
\u5207\u5272\u957f\u65b9\u578b\u5de6\u4e0a\u89d2x\u5750\u6807\uff0cy\u5750\u6807 \u53f3\u4e0b\u89d2x\u5750\u6807 y\u5750\u6807
\u4e0b\u9762\u6211\u5c31\u505a\u4e00\u4e2a\u6f14\u793a\u54c8
Set Jpeg = Server.CreateObject(\"Persits.Jpeg\")
jpeg.open server.MapPath(\"/pic/1.gif\")
jpeg.width=70
Jpeg.Height = Jpeg.OriginalHeight*70 / jpeg.Originawidth
jpeg.crop 0,0,70,52 \u5f00\u59cb\u5207\u5272\u5176\u5b9e\u662f\u628a\u8d85\u8fc752\u8c61\u7d20\u7684\u4e0b\u90e8\u5206\u53bb\u6389
jpeg.save server.MapPath(\"/temp_pic/small_1.gif\") \u4fdd\u5b58


\u4e94\u3001\u56fe\u7247\u5408\u5e76 .

\u6211\u4eec\u8fd9\u91cc\u662f\u8981\u628alogo\u56fe\u7247\u52a0\u5230dodge_viper.jpg\u56fe\u7247\u4e0a\u53bb

Set Photo = Server.CreateObject(\"Persits.Jpeg\")
PhotoPath = Server.MapPath(\"images\") & \"\\dodge_viper.jpg\"
Photo.Open PhotoPath
Set Logo = Server.CreateObject(\"Persits.Jpeg\")
LogoPath = Server.MapPath(\"images\") & \"\\clock.jpg\"
Logo.Open LogoPath .

Logo.Width = 70
Logo.Height = Logo.Width * Logo.OriginalHeight / Logo.OriginalWidth .

Photo.DrawImage 0, 0, Logo .

Photo.SendBinary \u8fd9\u91cc\u7528\u4e86sendBinary\u7684\u8f93\u51fa\u65b9\u6cd5\u3002\u5f53\u7136\uff0c\u4f60\u4e5f\u53ef\u4ee5\u5148\u4fdd\u5b58\u66f4\u6539\u540e\u7684dodge_viper.jpg\uff0c\u518d\u8f93\u5165\u4e5f\u53ef\u4ee5\u3002\u6211\u4e2a\u4eba\u4e0d\u5927\u559c\u6b22\u7528sendBinary\u65b9\u6cd5\uff0c\u5728\u7f51\u901f\u6162\u7684\u65f6\u5019\u5bb9\u6613\u51fa\u9519\u3002\u5728\u901f\u5ea6\u65b9\u9762\u4e5f\u4e0d\u600e\u6837\u3002
\u516d\u3001\u6570\u636e\u5e93\u652f\u6301 .

\u8fd9\u91cc\u4e0d\u591a\u8bf4\u4e86\u3002\u5176\u5b9e\u5c31\u662fBinary\u65b9\u6cd5\uff0c\u5927\u5bb6\u77e5\u9053\u56fe\u7247\u5b58\u8fdb\u6570\u636e\u5e93\u53ea\u80fd\u5b58\u4e3a\u4e8c\u8fdb\u5236\u7684\u6587\u4ef6\u7684\u3002\u6240\u4ee5\u4ee3\u7801\u5c31\u61d2\u7684\u5199\u4e86\u3002 .

\u4e03\u3001\u66f4\u591a\u65b9\u6cd5\u4ecb\u7ecd .

Canvas.Line(Left, Top, Right, Bottom)
\u753b\u4e00\u6761\u76f4\u7ebf
Canvas.Ellipse(Left, Top, Right, Bottom)
\u753b\u51fa\u4e00\u4e2a\u692d\u5706
Canvas.Circle(X, Y, Radius)
\u753b\u51fa\u4e00\u4e2a\u5706
Canvas.Bar(Left, Top, Right, Bottom)
\u753b\u51fa\u4e00\u4e2a\u957f\u65b9\u5f62\uff0c\u4e0a\u9762\u6709\u4ee3\u7801\u4ecb\u7ecd\u4e86
Canvas.Font.ShadowColor
\u6587\u5b57\u9634\u5f71\u989c\u8272
Canvas.Font.ShadowXOffset As Long
\u9634\u5f71X\u5750\u6807\u8bbe\u5b9a
Canvas.Font.ShadowYOffset As Long
Y\u5750\u6807\u8bbe\u5b9a
Canvas.Font.BkMode As String
\u6587\u5b57\u80cc\u666f .
\n\n
"} 13 | {"log_Intro": "\u7528asp\u81ea\u52a8\u89e3\u6790\u7f51\u9875\u4e2d\u7684\u56fe\u7247\u5730\u5740", "log_Title": "\u7528asp\u81ea\u52a8\u89e3\u6790\u7f51\u9875\u4e2d\u7684\u56fe\u7247\u5730\u5740_ASP\u57fa\u7840", "log_Content": "
\r\n \u4e00\uff0c\u53d6\u5f97\u539f\u9875\u4e2d\u7684\u56fe\u7247\u7684\u5730\u5740\u3002 \r\n
<%
function PicStr(str)
\u00a0Set objRegExp = New Regexp '\u8bbe\u7f6e\u914d\u7f6e\u5bf9\u8c61
\u00a0objRegExp.IgnoreCase = True '\u5ffd\u7565\u5927\u5c0f\u5199
\u00a0objRegExp.Global = True '\u8bbe\u7f6e\u4e3a\u5168\u6587\u641c\u7d22
\u00a0objRegExp.Pattern = \"<IMG.+?>\" '\u4e3a\u4e86\u786e\u4fdd\u80fd\u51c6\u786e\u5730\u53d6\u51fa\u56fe\u7247\u5730\u5740\u6240\u4ee5\u5206\u4e3a\u4e24\u5c42\u914d\u7f6e\uff1a\u9996\u5148\u627e\u5230\u91cc\u9762\u7684<IMG>\u6807\u7b7e\uff0c\u7136\u540e\u518d\u53d6\u51fa\u91cc\u9762\u7684\u56fe\u7247\u5730\u5740\u540e\u9762\u7684getimgs\u51fd\u6570\u5c31\u662f\u5b9e\u73b0\u540e\u4e00\u4e2a\u529f\u80fd\u7684\u3002
\u00a0strs=trim(str)
\u00a0Set Matches =objRegExp.Execute(strs) '\u5f00\u59cb\u6267\u884c\u914d\u7f6e
\u00a0For Each Match in Matches
\u00a0PicStr = PicStr &getimgs;( Match.Value ) '\u6267\u884c\u7b2c\u4e8c\u8f6e\u7684\u5339\u914d
\u00a0Next
\u00a0'\u6240\u6709\u7684\u56fe\u7247\u5728\u91cc\u9762\u90fd\u662f\u8fd9\u6837\u7684src=\"http://\u56fe\u7247\u7684\u5730\u5740\"\uff0c\u6240\u4ee5\u53ef\u4ee5\u8fd9\u6837\u6765\u53d6\u5f97\u786e\u5207\u7684\u56fe\u7247\u5730\u5740
end function

function getimgs(str)
\u00a0getimgs=\"\"
\u00a0Set objRegExp1 = New Regexp
\u00a0objRegExp1.IgnoreCase = True
\u00a0objRegExp1.Global = True
\u00a0objRegExp1.Pattern = \"http://.+?\"\"\" '\u53d6\u51fa\u91cc\u9762\u7684\u5730\u5740
\u00a0set mm=objRegExp1.Execute(str)
\u00a0For Each Match1 in mm
\u00a0getimgs=getimgs&\"||\"&left;(Match1.Value,len(Match1.Value)-1) '\u628a\u91cc\u9762\u7684\u5730\u5740\u4e32\u8d77\u6765\u5907\u7528
\u00a0next
end function
%>

\u4e8c\uff0c\u4e0b\u8f7d\u56fe\u7247\u5e76\u4fdd\u5b58\u5728\u670d\u52a1\u5668\u4e0a\u3002 \r\n
<%
function getHTTPPage(url)
\u00a0\u00a0on error resume next
\u00a0\u00a0dim http
\u00a0\u00a0set http=server.createobject(\"MSXML2.XMLHTTP\") '\u4f7f\u7528xmlhttp\u7684\u65b9\u6cd5\u6765\u83b7\u5f97\u56fe\u7247\u7684\u5185\u5bb9
\u00a0\u00a0Http.open \"GET\",url,false
\u00a0\u00a0Http.send()
\u00a0\u00a0if Http.readystate<>4 then
\u00a0\u00a0exit function
\u00a0\u00a0end if
\u00a0\u00a0getHTTPPage=Http.responseBody
\u00a0\u00a0set http=nothing
\u00a0\u00a0if err.number<>0 then err.Clear
end function
'\u53d6\u5f97\u4e86\u56fe\u7247\u7684\u5185\u5bb9\u8981\u4fdd\u5b58\uff0c\u7ed9\u4eba\u4e00\u79cd\u611f\u89c9\u662f\u7528FSO\u6765\u4f5c\u5c31\u53ef\u4ee5\u4e86\uff0c\u4f46\u5b9e\u9645\u4e0a\u4e0d\u884c\uff0c\u8fd9\u6837\u4fdd\u5b58\u7a0b\u5e8f\u5c31\u4f1a\u51fa\u9519\uff0c\u56e0\u4e3aFSO\u4e0d\u652f\u6301\u6d41\u5f0f\u7684\u6587\u4ef6\uff0c\u6240\u4ee5\u6211\u4eec\u8981\u8c03\u7528\u53e6\u4e00\u4e2a\u5bf9\u8c61\uff1aADO.STREM\u3002\u5177\u4f53\u7684\u8fc7\u7a0b\u5982\u4e0b\uff1a
function saveimage(from,tofile)
\u00a0\u00a0dim geturl,objStream,imgs
\u00a0\u00a0geturl=trim(from)
\u00a0\u00a0imgs=gethttppage(geturl)'\u53d6\u5f97\u56fe\u7247\u7684\u5177\u4f11\u5185\u5bb9\u7684\u8fc7\u7a0b
\u00a0\u00a0Set objStream = Server.CreateObject(\"ADODB.Stream\")'\u5efa\u7acbADODB.Stream\u5bf9\u8c61\uff0c\u5fc5\u987b\u8981ADO 2.5\u4ee5\u4e0a\u7248\u672c
\u00a0\u00a0objStream.Type =1'\u4ee5\u4e8c\u8fdb\u5236\u6a21\u5f0f\u6253\u5f00
\u00a0\u00a0objStream.Open
\u00a0\u00a0objstream.write imgs'\u5c06\u5b57\u7b26\u4e32\u5185\u5bb9\u5199\u5165\u7f13\u51b2
\u00a0\u00a0objstream.SaveToFile server.mappath(tofile),2'-\u5c06\u7f13\u51b2\u7684\u5185\u5bb9\u5199\u5165\u6587\u4ef6
\u00a0\u00a0objstream.Close()'\u5173\u95ed\u5bf9\u8c61
\u00a0\u00a0set objstream=nothing
end function

'\u6240\u4ee5\u53ea\u8981\u7528\u4e00\u4e2a\u5faa\u73af\u6765\u628a\u521a\u624d\u53d6\u5f97\u7684\u5730\u5740\u4e2d\u7684\u56fe\u7247\u5168\u90e8\u4fdd\u5b58\u4e0b\u6765\uff0c\u5177\u4f53\u8fc7\u7a0b\u5982\u4e0b\uff1a
arrimg=split(PicStr(str),\"||\") '\u5206\u5272\u5b57\u4e32\uff0c\u53d6\u5f97\u91cc\u9762\u5730\u5740\u5217\u8868
allimg=\"\"
newimg=\"\"
for i=1 to ubound(arrimg)
if arrimg(i)<>\"\" and instr(allimg,arrimg(i))<1 then '\u770b\u8fd9\u4e2a\u56fe\u7247\u662f\u5426\u5df2\u7ecf\u4e0b\u8f7d\u8fc7
fname=baseurl&cstr;(i&mid;(arrimg(i),instrrev(arrimg(i),\".\")))
saveimage(arrimg(i),fname)\u2018\u4fdd\u5b58\u5730\u5740\u7684\u51fd\u6570\uff0c\u8fc7\u7a0b\u89c1\u4e0a\u9762
allimg=allimg&\"||\"&arrimg;(i) '\u628a\u4fdd\u5b58\u4e0b\u6765\u7684\u56fe\u7247\u7684\u5730\u5740\u4e32\u56de\u8d77\u6765\uff0c\u4ee5\u786e\u5b9a\u8981\u66ff\u6362\u7684\u5730\u5740
newimg=newimg&\"||\"&fname; '\u628a\u672c\u5730\u7684\u5730\u5740\u4e32\u56de\u8d77\u6765
end if
next
'\u7b2c\u4e09\u6b65\u5c31\u662f\u66ff\u6362\u539f\u6765\u7684\u5730\u5740\u4e86\u3002\u5177\u4f53\u7684\u8fc7\u7a0b\u5c31\u662f\u4e0b\u9762\u4e86\uff1a
arrnew=split(newimg,\"||\") '\u53d6\u5f97\u539f\u6765\u7684\u56fe\u7247\u5730\u5740\u5217\u8868
arrall=split(allimg,\"||\") '\u53d6\u5f97\u5df2\u7ecf\u4fdd\u5b58\u4e0b\u6765\u7684\u56fe\u7247\u7684\u5730\u5740\u5217\u8868
for i=1 to ubound(arrnew) '\u6267\u884c\u5faa\u73af\u66ff\u6362\u539f\u6765\u7684\u5730\u5740
\u00a0\u00a0strs=replace(strs,arrall(i),arrnew(i))
next
%>
\n\n
"} 14 | {"log_Intro": "aspjpeg\u7ec4\u4ef6\u4f7f\u7528\u65b9\u6cd5", "log_Title": "aspjpeg\u7ec4\u4ef6\u4f7f\u7528\u65b9\u6cd5_ASP\u57fa\u7840", "log_Content": "
\r\n aspjpeg\u662f\u4e00\u6b3e\u975e\u5e38\u5f3a\u5927\u7684\u56fe\u7247\u5904\u7406\u7ec4\u4ef6\uff0c\u7eaf\u82f1\u6587\u7248\u672c\u3002\u4e0d\u8fc7\u65e9\u5df2\u7ecf\u6709\u514d\u8d39\u7248\u548c\u7834\u89e3\u7248\uff0c\u4f46\u662f\u5bf9\u5176\u8fdb\u884c\u8be6\u7ec6\u4e0e\u6df1\u5165\u4ecb\u7ecd\u7684\u6587\u7ae0\u5374\u662f\u4e0d\u591a\uff0c\u5373\u4f7f\u6709\u4e5f\u53ea\u7275\u6d89\u5230\u56fe\u7247\u7f29\u7565\u548c\u56fe\u7247\u6c34\u5370\u3002\u53ef\u80fd\u662f\u56e0\u4e3a\u7eaf\u82f1\u6587\u7684\u7f18\u6545\u3002
\u4f7f\u7528aspjepg\u4e3b\u8981\u53ef\u4ee5\u505a\u5230:
\u56fe\u7247\u7f29\u7565
\u56fe\u7247\u6c34\u5370
\u5b89\u5168\u7801\u6280\u672f
\u56fe\u7247\u5207\u5272
\u56fe\u7247\u5408\u5e76
\u6570\u636e\u5e93\u652f\u6301
\u4e00\u3001\u56fe\u7247\u7f29\u7565 .

\u67e5\u770b\u5904\u7406\u7684\u56fe\u7247 .
\u4e8c\u3001\u56fe\u7247\u6c34\u5370 .
.
\u4e09\u3001\u5b89\u5168\u7801
.
\u5b89\u5168\u739b\u7684\u9053\u7406\u548c\u52a0\u6c34\u5370\u5dee\u4e0d\u591a\u3002

.
\u751f\u6210\u5b89\u5168\u7801\u7684\u56fe\u7247\u3002


\u56db\u3001\u56fe\u7247\u5207\u5272
.
\u4e00\u76f4\u4ee5\u6765\uff0c\u5bf9aspjpeg\u4e0d\u4e86\u89e3\u7684\u4eba\u4ee5\u4e3a\u662f\u65e0\u6cd5\u7528\u5b83\u6765\u8fdb\u884c\u5207\u5272\u7684\u3002
\u5176\u5b9e\u6709\u8fd9\u6837\u7684\u4e00\u4e2a\u65b9\u6cd5\u7684
crop x1,y1,x2,y2
\u5207\u5272\u957f\u65b9\u578b\u5de6\u4e0a\u89d2x\u5750\u6807\uff0cy\u5750\u6807 \u53f3\u4e0b\u89d2x\u5750\u6807 y\u5750\u6807
\u4e0b\u9762\u6211\u5c31\u505a\u4e00\u4e2a\u6f14\u793a\u54c8
Set Jpeg =
Server.CreateObject(\"Persits.Jpeg\")
jpeg.open server.MapPath(\"/pic/1.gif\")
jpeg.width=70
Jpeg.Height = Jpeg.OriginalHeight*70 / jpeg.Originawidth
jpeg.crop 0,0,70,52 \u5f00\u59cb\u5207\u5272\u5176\u5b9e\u662f\u628a\u8d85\u8fc752\u8c61\u7d20\u7684\u4e0b\u90e8\u5206\u53bb\u6389
jpeg.save
server.MapPath(\"/temp_pic/small_1.gif\") \u4fdd\u5b58
\u4e94\u3001\u56fe\u7247\u5408\u5e76
.
\u6211\u4eec\u8fd9\u91cc\u662f\u8981\u628alogo\u56fe\u7247\u52a0\u5230dodge_viper.jpg\u56fe\u7247\u4e0a\u53bb
Set Photo =
Server.CreateObject(\"Persits.Jpeg\")
PhotoPath = Server.MapPath(\"images\")
& \"\\dodge_viper.jpg\"
Photo.Open PhotoPath
Set Logo =
Server.CreateObject(\"Persits.Jpeg\")
LogoPath = Server.MapPath(\"images\")
& \"\\clock.jpg\"
Logo.Open LogoPath .
Logo.Width = 70
Logo.Height = Logo.Width * Logo.OriginalHeight / Logo.OriginalWidth
.
Photo.DrawImage 0, 0, Logo .
Photo.SendBinary
\u8fd9\u91cc\u7528\u4e86sendBinary\u7684\u8f93\u51fa\u65b9\u6cd5\u3002\u5f53\u7136\uff0c\u4f60\u4e5f\u53ef\u4ee5\u5148\u4fdd\u5b58\u66f4\u6539\u540e\u7684dodge_viper.jpg\uff0c\u518d\u8f93\u5165\u4e5f\u53ef\u4ee5\u3002\u6211\u4e2a\u4eba\u4e0d\u5927\u559c\u6b22\u7528sendBinary\u65b9\u6cd5\uff0c\u5728\u7f51\u901f\u6162\u7684\u65f6\u5019\u5bb9\u6613\u51fa\u9519\u3002\u5728\u901f\u5ea6\u65b9\u9762\u4e5f\u4e0d\u600e\u6837\u3002
\u516d\u3001\u6570\u636e\u5e93\u652f\u6301
.
\u8fd9\u91cc\u4e0d\u591a\u8bf4\u4e86\u3002\u5176\u5b9e\u5c31\u662fBinary\u65b9\u6cd5\uff0c\u5927\u5bb6\u77e5\u9053\u56fe\u7247\u5b58\u8fdb\u6570\u636e\u5e93\u53ea\u80fd\u5b58\u4e3a\u4e8c\u8fdb\u5236\u7684\u6587\u4ef6\u7684\u3002\u6240\u4ee5\u4ee3\u7801\u5c31\u61d2\u7684\u5199\u4e86\u3002 .
\u4e03\u3001\u66f4\u591a\u65b9\u6cd5\u4ecb\u7ecd
.
Canvas.Line(Left, Top, Right, Bottom)
\u753b\u4e00\u6761\u76f4\u7ebf
Canvas.Ellipse(Left, Top, Right, Bottom)
\u753b\u51fa\u4e00\u4e2a\u692d\u5706
Canvas.Circle(X, Y,
Radius)
\u753b\u51fa\u4e00\u4e2a\u5706
Canvas.Bar(Left, Top, Right, Bottom)
\u753b\u51fa\u4e00\u4e2a\u957f\u65b9\u5f62\uff0c\u4e0a\u9762\u6709\u4ee3\u7801\u4ecb\u7ecd\u4e86
Canvas.Font.ShadowColor
\u6587\u5b57\u9634\u5f71\u989c\u8272
Canvas.Font.ShadowXOffset As Long
\u9634\u5f71X\u5750\u6807\u8bbe\u5b9a
Canvas.Font.ShadowYOffset As Long
Y\u5750\u6807\u8bbe\u5b9a
Canvas.Font.BkMode As String
\u6587\u5b57\u80cc\u666f .

'//------Pollener.com AspJpeg\u7ec4\u4ef6\u7684\u9884\u89c8\u548c\u6c34\u5370\u751f\u6210------\u5f00\u59cb------
'\u521b\u5efa\u9884\u89c8\u56fe\u7247:call
CreateView(\u539f\u59cb\u6587\u4ef6\u7684\u8def\u5f84,\u9884\u89c8\u6587\u4ef6\u540d\u53ca\u8def\u5f84)
Sub
CreateView(imagename,tempFilename)
'\u5b9a\u4e49\u53d8\u91cf\u3002
Dim
PreviewImageFolderName
Dim ogvbox,objFont
Dim Logobox,LogoPath
LogoPath
= Server.MapPath(\"images\") & \"\\shuiyin.gif\"
'//\u52a0\u5165\u56fe\u7247\u6240\u5728\u8def\u5f84\u53ca\u6587\u4ef6\u540d(\u6211\u7684\u662f\u8bba\u575b\\images\\shuiyin.gif)\u3002
Select Case
upload_ViewType
Case
0
'---------------------CreatePreviewImage---------------
set ogvbox =
Server.CreateObject(\"CreatePreviewImage.cGvbox\")
ogvbox.SetSavePreviewImagePath=Server.MapPath(tempFilename)
'\u9884\u89c8\u56fe\u5b58\u653e\u8def\u5f84\u3002
ogvbox.SetPreviewImageSize =SetPreviewImageSize
'\u9884\u89c8\u56fe\u5bbd\u5ea6\u3002
ogvbox.SetImageFile = trim(Server.MapPath(imagename))
'imagename\u539f\u59cb\u6587\u4ef6\u7684\u7269\u7406\u8def\u5f84\u3002
'\u521b\u5efa\u9884\u89c8\u56fe\u7684\u6587\u4ef6\u3002
If
ogvbox.DoImageProcess=false Then
Response.write \"\u751f\u6210\u9884\u89c8\u56fe\u9519\u8bef:\"&
ogvbox.GetErrString
End If
Case
1
'---------------------AspJpegV1.2---------------
Set Logobox =
Server.CreateObject(\"Persits.Jpeg\")
'//\u5efa\u8bae\u4e0d\u8981\u56fe\u7247\u548c\u6587\u5b57\u6c34\u5370\u540c\u65f6\u4f7f\u7528\uff0c\u672c\u4ee3\u7801\u4e3a\u4f7f\u7528\u56fe\u7247\u6c34\u5370\u3002
Logobox.Open
LogoPath '//\u8bfb\u53d6\u6dfb\u52a0\u7684\u56fe\u7247\u3002
'//\u91cd\u65b0\u8bbe\u7f6e\u56fe\u7247\u7684\u5927\u5c0f\u3002
Logobox.Width = 186
'//\u7528\u505a\u6c34\u5370\u7684\u56fe\u7247\u7684\u5bbd\u5ea6\u503c\uff08\u50cf\u7d20\uff09\u3002
Logobox.Height = 52
'//\u7528\u505a\u6c34\u5370\u7684\u56fe\u7247\u7684\u9ad8\u5ea6\u503c\uff08\u50cf\u7d20\uff09\u3002
'//\u6dfb\u52a0\u6c34\u5370\u3002
Set ogvbox =
Server.CreateObject(\"Persits.Jpeg\")
'//\u8bfb\u53d6\u8981\u5904\u7406\u7684\u539f\u6587\u4ef6\u3002
ogvbox.Open
Trim(Server.MapPath(imagename))
If ogvbox.OriginalWidth\"\" and FileExt\"gif\" Then '//\u5982\u679c\u5c06\u8fd9\u884c\u6539\u4e3aIF
ImageMode\"\"
Then\u5219\u53ef\u7ed9\u4e0a\u4f20\u7684GIF\u56fe\u7247\u4e5f\u52a0\u4e0a\u6c34\u5370\uff0c\u4f46\u662f\u90a3\u4e9b\u52a8\u753b\u7684GIF\u5728\u52a0\u4e86\u6c34\u5370\u4ee5\u540e\u5c31\u53ea\u5269\u7b2c\u4e00\u6862\u4e86\uff0c\u6839\u636e\u4f60\u7684\u9700\u6c42\u914c\u60c5\u5904\u7406\u5427\u3002
'//\u5173\u4e8e\u4fee\u6539\u5b57\u4f53\u53ca\u6587\u5b57\u989c\u8272\u7684\u3002
'//ogvbox.Canvas.Font.Color
= &H0000FF; '//\u6c34\u5370\u6587\u5b57\u7684\u989c\u8272\uff0c&H;\u540e\u9762\u8f93\u5165\u8272\u5f69\u503c\u3002
'//ogvbox.Canvas.Font.Size =
18 '//\u6c34\u5370\u6587\u5b57\u7684\u5927\u5c0f\u3002
'//ogvbox.Canvas.Font.Family = \"Arial\"
'//\u6c34\u5370\u6587\u5b57\u7684\u5b57\u4f53\u540d\u79f0\u3002
'//ogvbox.Canvas.Font.ShadowColor = &H000000;
'//\u6c34\u5370\u6587\u5b57\u7684\u9634\u5f71\u8272\u5f69\u3002
'//ogvbox.Canvas.Font.ShadowXoffset = 1
'//\u6c34\u5370\u6587\u5b57\u9634\u5f71\u5411\u53f3\u504f\u79fb\u7684\u50cf\u7d20\u503c\uff0c\u8f93\u5165\u8d1f\u503c\u5219\u5411\u5de6\u504f\u79fb\u3002
'//ogvbox.Canvas.Font.ShadowYoffset = 1
'//\u6c34\u5370\u6587\u5b57\u9634\u5f71\u5411\u4e0b\u504f\u79fb\u7684\u50cf\u7d20\u503c\uff0c\u8f93\u5165\u8d1f\u503c\u5219\u5411\u53f3\u504f\u79fb\u3002
'//ogvbox.Canvas.Font.Quality = 3
'//\u6c34\u5370\u6587\u5b57\u7684\u6e05\u6670\u5ea6\uff0c\u4ece0\uff5e4\uff0c\u53d8\u6362\u4e0d\u662f\u5f88\u5927\uff0c\u5efa\u8bae\u75282\u62163\u3002
'//ogvbox.Canvas.Font.Bold = True
'//\u6c34\u5370\u6587\u5b57\u662f\u5426\u4e3a\u7c97\u4f53\uff0cTrue=\u7c97\u4f53 False=\u6b63\u5e38\u3002
'ogvbox.Canvas.Print 10, 10,
ImageMode '//\u6c34\u5370\u6587\u5b57\u7684\u8d77\u59cb\u5750\u6807\uff08\u50cf\u7d20\uff09\u3002
ogvbox.Canvas.Pen.Color =
&H000000; '//\u589e\u52a0\u6c34\u5370\u540e\u56fe\u7247\u7684\u8fb9\u6846\u8272\u5f69\u3002
ogvbox.Canvas.Pen.Width = 1
'//\u589e\u52a0\u6c34\u5370\u540e\u56fe\u7247\u7684\u8fb9\u6846\u5bbd\u5ea6\u3002
ogvbox.Canvas.Brush.Solid = False
'//\u8fb9\u6846\u5185\u662f\u5426\u586b\u5145\u989c\u8272\uff0c\u4f60\u53ef\u4ee5\u8bd5\u8bd5\u770b\u503c\u4e3aTrue\u65f6\u7684\u6548\u679c^o^
ogvbox.DrawImage ogvbox.width-186,
ogvbox.height-52, Logobox, 0.5 '//\u6c34\u5370\u56fe\u7247\u7684\u8d77\u59cb\u5750\u6807\uff0c\u6211\u8fd9\u91ccogvbox.width-186,
ogvbox.height-52,\u8868\u793a\u56fe\u7247\u5728\u53f3\u4e0b\u89d2\uff0c\u56e0\u4e3a\u6211\u7684\u56fe\u7247\u5bbd\u662f186\uff0c\u9ad8\u662f52\uff0c\u6240\u4ee5\u8fd9\u6837\u5199\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u81ea\u5df1\u7684\u56fe\u7247\u8fdb\u884c\u8c03\u6574\u30020.5\u662f\u900f\u660e\u5ea6\uff0c\u6211\u8fd9\u91cc\u662f\u534a\u900f\u660e\uff0c1\u8868\u793a\u4e0d\u900f\u660e\uff0c\u4f60\u4e5f\u53ef\u4ee5\u8bd5\u8bd5\u770b0.7\u6216\u80050.8\u7684\u6548\u679c\u3002
ogvbox.Canvas.Bar
0, 0, ogvbox.Width, ogvbox.Height
'//\u6c34\u5370\u53ef\u7528\u7684\u8303\u56f4\u3002\u6211\u8fd9\u91cc\u8868\u793a\u5de6\u4e0a\u89d2\u81f3\u53f3\u4e0b\u89d2\uff0c\u5373\u6574\u5f20\u56fe\u7247\u7684\u4efb\u610f\u4e3a\u6b62\u90fd\u53ef\u52a0\u6c34\u5370\u3002
ogvbox.Save
Server.MapPath(imagename) '//\u6839\u636e\u4ee5\u4e0a\u53c2\u6570\u751f\u6210\u589e\u52a0\u6c34\u5370\u540e\u7684\u56fe\u7247\u6587\u4ef6\u3002
End
If
ogvbox.Width = ImageWidth
ogvbox.height =
ImageHeight
'ogvbox.height =
ogvbox.Originalheight*ImageWidth\\ogvbox.OriginalWidth

ogvbox.Sharpen 1, 120
ogvbox.Save
Server.MapPath(tempFilename) '//\u751f\u6210\u589e\u52a0\u6c34\u5370\u540e\u7684\u56fe\u7247\u7684\u9884\u89c8\u56fe\u7247\u3002
End
If
Set Logobox=Nothing
'//------Pollener.com
AspJpeg\u7ec4\u4ef6\u7684\u9884\u89c8\u548c\u6c34\u5370\u751f\u6210------\u7ed3\u675f------\r\n \r\n \n
"} 15 | {"log_Intro": "\u7f51\u9875\u91cc\u63a7\u5236\u56fe\u7247\u5927\u5c0f\u7684\u76f8\u5173\u4ee3\u7801", "log_Title": "\u7f51\u9875\u91cc\u63a7\u5236\u56fe\u7247\u5927\u5c0f\u7684\u76f8\u5173\u4ee3\u7801_JavaScript", "log_Content": "
\r\n \uff11\u3001\u7528\u9f20\u6807\u62d6\u52a8\u6765\u6539\u53d8\u5927\u5c0f \r\n
<SCRIPT LANGUAGE=\"JavaScript\">
function resizeImage(evt,obj){
newX=evt.x
newY=evt.y
obj.width=newX
obj.height=newY
}
</script>
<img src=\"7say.gif\" ondrag=\"resizeImage(event,this)\">

\uff12\u3001\u7528\u9f20\u6807\u6eda\u52a8\u63a7\u5236\u56fe\u7247\u5927\u5c0f \r\n
<img src=\"7say.gif\" onmouseenter=\"focus();\" onmouseout=\"blur();\" onmousewheel=\"width+=(window.event.wheelDelta==120)?-5:+5;\">

\uff13\u3001\u56fe\u7247\u6807\u7b7e\u91cc\u7528\u4ee3\u7801\u63a7\u5236\u5927\u5c0f \r\n
<img border=\"0\" src=\"[!--picurl--]\" onload=\"if(this.width>screen.width-500)this.style.width=screen.width-500;\">
\n
\n
\u7ecf\u6d4b\u8bd5\u8fd9\u91cc\u9700\u8981\u4fee\u6539\u4e00\u4e0b\uff0c\u4e0d\u7136\u5237\u65b0\u7f51\u9875\u65f6\u56fe\u7247\u4f1a\u663e\u793a\u539f\u59cb\u5927\u5c0f\u3002<img border=\"0\" src=\"[!--picurl--]\" onload=\"if(this.width>screen.width-500)this.resized=true;this.style.width=screen.width-500;\">

\uff14\u3001CSS\u63a7\u5236\u56fe\u7247\u5927\u5c0f
1. css2\u76f4\u63a5\u5b9e\u73b0: img{max-width: 500px;} (IE\u6682\u4e0d\u652f\u6301)
2. expression\u5b9e\u73b0: img{width:expression(width>500?\"500px\":width);} (IE only)
3. \u4f7f\u7528js. \u65b9\u6cd5: \u7528 document.getElementsByTagName(\"IMG\") \u7684\u65b9\u6cd5\u53d6\u5f97\u5168\u90e8img\u5143\u7d20 \u904d\u5386img\u5143\u7d20 \u5224\u65ad\u5176\u5bbd\u5ea6\u5e76\u505a\u76f8\u5e94\u64cd\u4f5c\r\n \r\n \n
"} 16 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | twisted==17.9.0 2 | requests==2.11.0 3 | bs4==0.0.1 4 | BeautifulSoup4==4.6.0 5 | pymysql==0.8.0 6 | urllib3==1.22 7 | 8 | -------------------------------------------------------------------------------- /scrapy.cfg: -------------------------------------------------------------------------------- 1 | # Automatically created by: scrapy startproject 2 | # 3 | # For more information about the [deploy] section see: 4 | # https://scrapyd.readthedocs.org/en/latest/deploy.html 5 | 6 | [settings] 7 | default = Common_crawler.settings 8 | 9 | [deploy] 10 | #url = http://localhost:6800/ 11 | project = Common_crawler 12 | -------------------------------------------------------------------------------- /start.py: -------------------------------------------------------------------------------- 1 | from scrapy import cmdline 2 | 3 | cmdline.execute("scrapy crawl Common_crawler".split()) 4 | --------------------------------------------------------------------------------