社区
Delphi
帖子详情
无法下载图片
lzg827
2017-09-20 07:38:37
网址是https://scnewb2b.travelsky.com/
希望下载验证码图片,是个小程序。
现在验证码图片无法下载。求大神帮忙,要求用Delphi
分数不是问题,不够另外开贴加,能解决问题的话,RMB都可以。
...全文
561
10
打赏
收藏
无法下载图片
网址是https://scnewb2b.travelsky.com/ 希望下载验证码图片,是个小程序。 现在验证码图片无法下载。求大神帮忙,要求用Delphi 分数不是问题,不够另外开贴加,能解决问题的话,RMB都可以。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lzg827
2018-11-21
打赏
举报
回复
多谢各位捧场,后来自己搞定了。忘了结贴,好丢人
jouky
2017-10-07
打赏
举报
回复
不会,帮顶,结帖看能不能赚点分
满面尘,鬓如霜,何处话凄凉
2017-09-30
打赏
举报
回复
需要openssl dll libeay32.dll ssleay32.dll
满面尘,鬓如霜,何处话凄凉
2017-09-30
打赏
举报
回复
procedure TForm5.Button1Click(Sender: TObject); begin ShowImage(Image1); end; procedure TForm5.DownloadVerifyCodeImage(AStream: TStream); const URL = 'https://scnewb2b.travelsky.com/scb2b/VerificationCode.do?agentType=domestic'; var LHttp: TIdHTTP; LIOHandler: TIdIOHandler; begin LHttp:= TIdHTTP.Create(nil); LIOHandler:= TIdSSLIOHandlerSocketOpenSSL.Create(nil); try LHttp.IOHandler := LIOHandler; LHttp.Get(URL, AStream); finally LIOHandler.Free; LHttp.Free; end; end; procedure TForm5.ShowImage(AImage: TImage); var LStream : TStream; LJpeg: TJPEGImage; begin LStream := TMemoryStream.Create; try DownloadVerifyCodeImage(LStream); if LStream.Size = 0 then Exit; LStream.position := 0; LJpeg:= TJPEGImage.Create; try LJpeg.LoadFromStream(LStream); AImage.Picture.Assign(LJpeg); finally LJpeg.Free; end; finally LStream.Free; end; end;
老之
2017-09-28
打赏
举报
回复
4楼的就是正解。
思路是先分析图片的链接和格式,使用TIdHttp下载图片。因为是HTTPS协议,所以还要使用TIdSSLIOHandlerSocketOpenSSL来和TIdHttp绑定。
TIdSSLIOHandlerSocketOpenSSL要依赖libeay32.dll和ssleay32.dll。这两DLL是旧版OpenSSL编译出来的,新版的好像没有这两个DLL了。
代码就那么几句:
uses jpeg;
var
AStream: TMemorystream;
begin
AStream := TMemoryStream.Create;
IdHttp1.Get('https://scnewb2b.travelsky.com/scb2b/VerificationCode.do', AStream);
AStream.SaveToFile('c:\VerificationCode.jpg');
Image1.Picture.LoadFromFile('c:\VerificationCode.jpg');
end;
关键你要找到那2个合适的DLL,有些DLL是会报错的。
xqchenxue2
2017-09-27
打赏
举报
回复
那个图片是动态绘出来,然后通过流输出到网页的,你通过鼠标事件模拟就可以了,我们以前通过网页打开就是这么高的
adslong
2017-09-23
打赏
举报
回复
用IDHTTP+SSL+两个DLL文件可以正常下载。
lyhoo163
2017-09-22
打赏
举报
回复
提供思路: 1、有些浏览器支持“ctrl”+“alt”键,同时鼠标左键点击图片,保存图片操作。可以通过模拟方式实现。 2、chrome浏览器有“审查元素”的操作,可以找到该图片“元素”,找到图片的地址。就能下载了。 3、有个软件图片下载器(NeoDownloader),你只要给它一个网址,它就会自动搜寻图片,把图片全部抓回你的计算机中。
lyhoo163
2017-09-22
打赏
举报
回复
通常验证的图片,是保护的。不让你下载,否则,你全部下载了,对应翻译成文字码。它就夫去验证的效应了。 建议你通过截图,方式来获取。这样,比较好处理。
lzg827
2017-09-20
打赏
举报
回复
RMB300,能搞定的兄弟回帖联系我。
python
下载
图片
无法
打开_python
下载
的
图片
不显示,
无法
查看
博客展示了一段Python代码用于从网页
下载
图片
,代码中定义了Header模拟浏览器请求,通过正则匹配获取
图片
链接并
下载
。但
下载
的
图片
无法
打开,作者询问如何正确
下载
图片
,涉及Python网络请求和
图片
下载
相关内容。
图片
下载
(包含了download打开
图片
无法
下载
的方法)
本文介绍了如何利用HTML的a标签download属性实现
图片
下载
,以及在遇到不兼容或
无法
直接
下载
情况时,通过将链接转换为blob地址并使用JS进行
图片
下载
的方法。但这种方法仅支持'http'或'https'开头的
图片
链接。
Ajax请求
无法
下载
图片
本文介绍了如何在浏览器环境中实现文件
下载
,特别是针对
图片
和ZIP压缩包的
下载
。通过分析Ajax
无法
实现文件
下载
的原因,提出了使用window.location.href发起请求的方式。并提供了两个Java工具类,分别用于
下载
图片
和创建ZIP文件
下载
。这些工具类在处理多个
图片
下载
时,可以将
图片
打包成ZIP以提高效率,并且适用于不同类型的文件
下载
。
python爬取
下载
的
图片
无法
显示的问题
本文记录了解决Python爬虫
下载
图片
时遇到的文件损坏问题。通过添加Referer到请求头,成功解决了
图片
无法
正常显示的情况。
用pycharm爬取天堂
图片
网
图片
时,出现
无法
下载
的情况怎么办啊
本文介绍了一个使用Python和requests库
下载
图片
的问题及解决方案。问题在于URL的获取方式不正确,通过直接从网页复制URL而非从body-div-imgsrc中获取,导致
图片
无法
下载
。修正后的URL直接指向
图片
文件,成功解决了
下载
问题。
Delphi
5,943
社区成员
262,943
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章