コード例 #1
0
 public void MiscTest()
 {
     {
         int i = 20;
         while (i-- != 0)
         {
             Random            r  = new Random();
             Webpages.Webpage  wp = new Webpages.Webpage(url3);
             RequestCustomizer rc = delegate(IRestRequest request)
             {
                 request.AddHeader("cache-control", "no-cache");
                 request.AddHeader("Connection", "keep-alive");
                 request.AddHeader("accept-encoding", "gzip, deflate");
                 request.AddHeader("Accept", "*/*");
                 //request.AddHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64)
                 //AppleWebKit /537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36
                 //Edge /14.14393");
                 request.AddHeader("Host", "www.deviantart.com");
                 request.AddHeader("Postman-Token",
                                   "444dc8e3-1a2c-4802-8df7-234017033b7a,ede1a149-0f07-4750-85e2-f03030318567");
                 request.AddHeader("Cache-Control", "no-cache");
                 return(request);
             };
             Webpage.Client.swappable_customizer = rc;
             print(wp);
             print(Webpage.Client);
             print(wp.raw_content_string);
             Assert.IsTrue(wp.raw_content_string.
                           Contains("<!--[if IE 9]><html class=\"ie eq9 lt10 \"><![endif]-->"));
             //Thread.Sleep(30);
         }
     }
 }
コード例 #2
0
        /// <summary>
        /// Create an instance of the DA object
        /// </summary>
        /// <remarks>
        /// This function is pivotal.
        /// </remarks>
        /// <param name="url"></param>
        /// <returns>
        /// An instance of DA opened with the given URL.
        /// </returns>
        /// <excpetion>
        /// An incorrect URL exeception is thrown if the input url doesn't match the
        /// regex: ^https?://www.deviantart.com.*$
        /// Other excpetion might be thrown from Webpage class.
        /// </excpetion>
        public static DAArtistwork GetInstance(string url)
        {
            Regex rx = new Regex("^https?://www.deviantart.com/.+/art/.+$");

            if (!rx.IsMatch(url))
            {
                throw new IncorrectURL();
            }
            DAArtistwork d = new DAArtistwork();

            d.daurl = url;
            RequestCustomizer rc = delegate(IRestRequest request)
            {
                request.AddHeader("cache-control", "no-cache");
                request.AddHeader("Connection", "keep-alive");
                request.AddHeader("accept-encoding", "gzip, deflate");
                request.AddHeader("Accept", "*/*");
                request.AddHeader("Host", "www.deviantart.com");
                // Important to each specific websites.
                request.AddHeader("Postman-Token",
                                  "444dc8e3-1a2c-4802-8df7-234017033b7a,ede1a149-0f07-4750-85e2-f03030318567");
                request.AddHeader("Cache-Control", "no-cache");
                //request.AddHeader
                //("User-Agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Mobile Safari/537.36");
                return(request);
            };

            Webpage.Client.swappable_customizer = rc;
            Webpage   newdapage = new Webpage(url);
            IDocument doc       = AngleSharpBridge.Get(newdapage.raw_content_string);

            d.dapage = newdapage;
            d.doc    = doc;
            return(d);
        }