0
Google 검색 상위 URL을 얻기 위해 스크립트를 작성했습니다. 이 스크립트의 가장 큰 문제점 중 하나는 내 IP를 기반으로 검색 결과가 반환된다는 것입니다. 말하자면, 나는 시카고에 있는데, 미국이 아닌 시카고로부터 결과를 반환하고 있습니다. 나는 사용자 에이전트와 관련이 있다는 것을 알았습니다 :C# Httpwebrequest Useragent
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Accept = "application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*";
request.Headers["Accept-Language"] = "en-US";
request.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)";
request.KeepAlive = true;
request.AllowAutoRedirect = true;
request.Timeout = 60000;
request.Method = "GET";
왜 내가 지역 검색을하고 있는지에 대한 아이디어가 있습니까?
나는 사용자 에이전트 때문에 그럴 수 있다고 생각합니다. 전달 된 API 및 매개 변수를 확인하고자 할 수 있습니다. 일부 위치 또는 지역 매개 변수가 누락되어 IP를 기반으로 현재 위치를 차지할 수 있습니다. – ryadavilli
API를 사용하고 있습니까, 아니면 화면을 스크래핑하고 있습니까? – Greg
사용자 에이전트와 관련이 없습니다. Google은 일반적으로 위치를 IP로 지정하므로 시카고에있는 경우 시카고에서 결과를 얻습니다. 프록시를 거친 경우 예상되는 결과를 기반으로 결과를 얻을 수 있습니다 해당 프록시의 IP 위치. – Rafael