吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5104|回复: 14
上一主题 下一主题
收起左侧

[求助] C#爬虫怎么绕过图片网站的反爬?

[复制链接]
跳转到指定楼层
楼主
莫名堂 发表于 2020-9-25 09:09 回帖奖励
[C#] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
private void button1_Click(object sender, EventArgs e)
        {
            Thread thread = new Thread(Download);
            thread.Start();
        }
 
        public void Download()
        {
 
            for (int i = 1; i <= 22; i++)
            {
                string url = "https://www.xiurenji.com/XiuRen/6545";
                url += "_" + i + ".html";
                string code = GetWebClient(url);
                MatchCollection mc = Regex.Matches(code, @"uploadfile/202009/23/[0-9A-Za-z]{10}.jpg");
                foreach (Match mat in mc)
                {
                    string url1 = "https://img1.xiurenji.com/";
                    url1 += mat.ToString();
                    ImgSave(url1);
                }
            }
        }
 
        /// 图片另存为
        /// </summary>
        /// <param name="url">路径</param>
        public void ImgSave(string url)
        {
 
            WebRequest imgRequest = WebRequest.Create(url);
 
            HttpWebResponse res;
            try
            {
                res = (HttpWebResponse)imgRequest.GetResponse();
            }
            catch (WebException ex)
            {
 
                res = (HttpWebResponse)ex.Response;
            }
 
            if (res.StatusCode.ToString() == "OK")
            {
                System.Drawing.Image downImage = System.Drawing.Image.FromStream(imgRequest.GetResponse().GetResponseStream());
 
                string deerory = string.Format(@"D:\img\{0}\", DateTime.Now.ToString("yyyy-MM-dd"));
 
                string fileName = string.Format("{0}.png", DateTime.Now.ToString("HHmmssffff"));
 
                if (!System.IO.Directory.Exists(deerory))
                {
                    System.IO.Directory.CreateDirectory(deerory);
                }
                downImage.Save(deerory + fileName);
                downImage.Dispose();
            }
        }


下载下来的图片全是清一色的界面(我估摸着是有反爬),希望来个哥们解决下怎么绕过反爬,最好有代码。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
DrCatcher + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

沙发
liu8359 发表于 2020-9-25 09:26
感觉是正则不对吧,研究下,被领导看到看这个就
3#
longiana 发表于 2020-9-25 09:32
4#
Vvvvvoid 发表于 2020-9-25 09:34
header  或者 body 或者 cookie 可能会有一个密钥鉴权,
加上就成
5#
yudian 发表于 2020-9-25 09:39
昨天帮人搞爬图时候也遇到一样的状况,加上协议头部就可以了
6#
yudian 发表于 2020-9-25 09:40
咱俩爬的一个网址哈哈哈,我成功了
7#
哈_喽 发表于 2020-9-25 09:45
请求头加上referer,cookie,ua再试试
8#
 楼主| 莫名堂 发表于 2020-9-25 09:47 |楼主
liu8359 发表于 2020-9-25 09:26
感觉是正则不对吧,研究下,被领导看到看这个就

正则是对了的,下载下来的图片清一色是错误提示,图片来自***。
9#
头狼 发表于 2020-9-25 09:47
又来送福利
10#
 楼主| 莫名堂 发表于 2020-9-25 09:50 |楼主
yudian 发表于 2020-9-25 09:40
咱俩爬的一个网址哈哈哈,我成功了

你是用易语言爬取的吧,我应该看到过你发的
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-1-25 15:31

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表