社区
Delphi
帖子详情
无法下载图片
lzg827
2017-09-20 07:38:37
网址是https://scnewb2b.travelsky.com/
希望下载验证码图片,是个小程序。
现在验证码图片无法下载。求大神帮忙,要求用Delphi
分数不是问题,不够另外开贴加,能解决问题的话,RMB都可以。
...全文
474
10
打赏
收藏
无法下载图片
网址是https://scnewb2b.travelsky.com/ 希望下载验证码图片,是个小程序。 现在验证码图片无法下载。求大神帮忙,要求用Delphi 分数不是问题,不够另外开贴加,能解决问题的话,RMB都可以。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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,能搞定的兄弟回帖联系我。
解决网页
无法
直接显示TIF
图片
问题
打开网页上的TIF文件时变成保存,用这个文件可以解决.
scrapy的ImagesPipeline
无法
下载
图片
,管道也开启了什么都配置了就是
无法
下载
图片
[scrapy.pipelines.files] WARNING: File (code: 301):
scrapy的ImagesPipeline
无法
下载
图片
,管道也开启了什么都配置了就是
无法
下载
图片
[scrapy.pipelines.files] WARNING: File (code: 301): 这里先重点说一下教训, 配置文件中 LOG_LEVEL 字段的设置一定不要只设置成...
使用scrapy中imagePipeline
下载
图片
,可以创建文件夹,但
无法
下载
图片
,解决方法
使用scrapy中imagePipeline
下载
图片
,可以创建文件夹,但
无法
下载
图片
,解决方法
图片
url解析正确,但爬虫
无法
下载
图片
图片
url解析正确,但爬虫
无法
下载
图片
解注释DOWNLOADER_MIDDLEWARES # Enable or disable downloader middlewares # See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html DOWNLOADER_...
关于scrapy
无法
下载
图片
pipeline不执行 解决办法 记一次大坑
关于scrapy
无法
下载
图片
pipeline不执行 解决办法 记一次大坑 出现的问题点:scrapy运行正常,pipeline管道经过测试是没有运行的。判断已经主要是并没有创建设置的IMAGES_STORE 提前指出解决的办法,主要是没有依赖...
Delphi
5,927
社区成员
262,931
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章