R语言利用RCurl下载验证码图片

这里有一个网站的验证码图片需要给定的header才能正常显示,
http://push.shangdu.com/regcode.php?token=prrX73LtmN_63uEcKh0a2Z1opo1ZgdcBJ
如果你直接打开它的话,会发现没有任何图案,因此通过普通的get是不能够实现的,必须要加上header的参数来获取验证码图。
代码很简单,如下:

library(RCurl)
myHttpheader <- c(
  "Accept"="image/webp,*/*;q=0.8",
  "Accept-Encoding"="gzip,deflate,sdch",
  "Accept-Language"="zh-CN,zh;q=0.8",
  "Cache-Control"="no-cache",
  "Connection"="keep-alive",
  "Pragma"="no-cache",
  "Referer"="http://bbs.shangdu.com/s/regform.htm",
  "User-Agent"="Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36"
)
png <- getBinaryURL("http://push.shangdu.com/regcode.php?token=prrX73LtmN_63uEcKh0a2Z1opo1ZgdcBJ",httpheader=myHttpheader)
writeBin(png, con = "C:/123.png") #保存图片
shell.exec(tf) #显示图片

你可能感兴趣的:(图片,下载,验证码,R语言,RCurl)