|
|
|
using System.Net.Http;
|
|
|
|
using System.Net.Http.Headers;
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
using System.Net;
|
|
|
|
using System.Text;
|
|
|
|
using System.IO;
|
|
|
|
using System;
|
|
|
|
using HtmlAgilityPack;
|
|
|
|
|
|
|
|
|
|
|
|
public class Address
|
|
|
|
{
|
|
|
|
public string Street { get; set; }
|
|
|
|
public string City { get; set; }
|
|
|
|
public string State { get; set; }
|
|
|
|
public string ZipCode { get; set; }
|
|
|
|
}
|
|
|
|
|
|
|
|
public class Posting
|
|
|
|
{
|
|
|
|
public string Agency { get; set; }
|
|
|
|
public string Title { get; set; }
|
|
|
|
public string OccupationalCategory { get; set; }
|
|
|
|
public string SalaryGrade { get; set; }
|
|
|
|
public string BargainingUnit { get; set; }
|
|
|
|
public string SalaryRange { get; set; }
|
|
|
|
public string EmploymentType { get; set; }
|
|
|
|
public string AppointmentType { get; set; }
|
|
|
|
public string JurisdictionalClass { get; set; }
|
|
|
|
public string TravelPercentage { get; set; }
|
|
|
|
public string MinimumQualifications { get; set; }
|
|
|
|
public string DutiesDescription { get; set; }
|
|
|
|
public string ContactName { get; set; }
|
|
|
|
public string ContactEmailAddress { get; set; }
|
|
|
|
public Address LocationAddress { get; set; }
|
|
|
|
public Address ContactAddress { get; set; }
|
|
|
|
public string NotesOnApplying { get; set; }
|
|
|
|
public string VacancyID { get; set; }
|
|
|
|
public DateTime DatePosted { get; set; }
|
|
|
|
public DateTime DateDue { get; set; }
|
|
|
|
|
|
|
|
public Posting(string id)
|
|
|
|
{
|
|
|
|
string fullUrl = $"https://statejobs.ny.gov/employees/vacancyDetailsView.cfm?id={id}";
|
|
|
|
using (var client = new HttpClient())
|
|
|
|
{
|
|
|
|
var response = client.GetAsync(fullUrl).Result;
|
|
|
|
|
|
|
|
if (response.IsSuccessStatusCode)
|
|
|
|
{
|
|
|
|
var responseContent = response.Content;
|
|
|
|
|
|
|
|
// by calling .Result you are synchronously reading the result
|
|
|
|
string responseString = responseContent.ReadAsStringAsync().Result;
|
|
|
|
HtmlDocument htmlDoc = new HtmlDocument();
|
|
|
|
htmlDoc.LoadHtml(responseString);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
this.VacancyID = id;
|
|
|
|
}
|
|
|
|
}
|