protected void Page_Load(object sender, EventArgs e) { if (this.Request.QueryString.Get("formID") == null) { Response.Redirect("./FormList.aspx", true); } if (IsPostBack) { return; } this.DropSubDoc.Items.Add(new ListItem("all", "-1")); var docCount = new SECFormsDocAnalyzer().GetFormSubdocCount(GetForm.FormID); for (var i = 0; i <= docCount; i++) { if (i == 0) { DropSubDoc.Items.Add(new ListItem("header", i.ToString())); } else { DropSubDoc.Items.Add(new ListItem(i.ToString(), i.ToString())); } } }
public void TestGetSnippet() { var analyzer = new SECFormsDocAnalyzer(); var doc = analyzer.GetFormSnippet(new Guid("08AA514B-BDF2-4DBA-B9F2-0139C3CA5512"), 0, "FORMER CONFORMED NAME"); Console.WriteLine(doc); }
protected void Page_Load(object sender, EventArgs e) { try { Response.ClearContent(); Response.ClearHeaders(); var formID = new Guid(Request.QueryString["formID"]); var seq = int.Parse(Request.QueryString["Seq"]); var manager = new SECFormsDocAnalyzer(); string fileName; string type; Response.Write(manager.GetFormSubDoc(formID, seq, out fileName, out type)); if (fileName == string.Empty) { fileName = "form.txt"; } Response.StatusCode = 200; Response.ContentType = "text/plain"; if (fileName.ToLower().Trim().EndsWith(".html") || fileName.ToLower().Trim().EndsWith(".htm")) { Response.ContentType = "text/html"; } Response.AppendHeader("Content-disposition", "Inline; filename=" + fileName); } catch (Exception ex) { Response.ClearContent(); Response.StatusCode = 400; Response.Write("No document or invalid document requested\r\n\r\n" + ex.ToString()); } }
private List <string> GetRows() { try { var formID = new Guid(Request.QueryString["formID"]); var seq = int.Parse(Request.QueryString["Seq"]); var manager = new SECFormsDocAnalyzer(); if (Request.QueryString["proximity"] == "on") { var term1 = Request.QueryString["proximityTerm1"]; var term2 = Request.QueryString["proximityTerm2"]; var proximityRange = int.Parse(Request.QueryString["proximityRange"]); var additionalRange = int.Parse(Request.QueryString["additionalRange"]); var paragraphs1 = manager.GetFormSubDocParagraphsWithProximity(formID, seq, proximityRange, term1, term2, additionalRange, true); return(paragraphs1); } if (Request.QueryString["search"] == "on") { var term1 = Request.QueryString["proximityTerm1"]; var additionalRange = int.Parse(Request.QueryString["additionalRange"]); var paragraphs1 = manager.GetFormSubDocParagraphsWithSearch(formID, seq, term1, additionalRange, true); return(paragraphs1); } var paragraphs = manager.GetFormSubDocParagraphs(formID, seq); return(paragraphs); } catch (Exception ex) { var paragraphs = new List <string> { "No document or invalid parameters", ex.Message, ex.ToString() }; return(paragraphs); } }
[Test] public void TestGetSubdoc() { var analyzer = new SECFormsDocAnalyzer(); string newFilename; string type; var doc = analyzer.GetFormSubDoc(new Guid("08AA514B-BDF2-4DBA-B9F2-0139C3CA5512"), 0, out newFilename, out type); Console.WriteLine(doc); }
[Test] public void TestGetParagraphs() { var analyzer = new SECFormsDocAnalyzer(); var doc = analyzer.GetFormSubDocParagraphs(new Guid("08AA514B-BDF2-4DBA-B9F2-0139C3CA5512"), 0); foreach (var par in doc) { Console.WriteLine(par); } }
[Test] public void TestTableExtractor() { var a = new SECFormsDocAnalyzer(); var t = a.GetTable(new Guid("a927c1ca-0e1b-46a4-b0bb-98ca8465f767"), 1, "market information"); foreach (var row in t) { foreach (var cell in row) { Console.Write(cell.Trim() + "|"); } Console.WriteLine(); } }
public int Snipe() { var generatedCount = 0; var adapter = new SECFormsManager(); var manager = new SECFormsSnippetManager(); var analyzer = new SECFormsDocAnalyzer(); var formsTable = adapter.GetFormSniperQueue(); var snippertsTable = new secCrawlerData.tblSEC_Forms_snippetDataTable(); foreach (var form1 in formsTable) { var newSnippet = analyzer.GetFormSnippet(form1.FormID, 1); snippertsTable.AddtblSEC_Forms_snippetRow( form1.FormID, 1, newSnippet, "default snippet" ); Log(newSnippet); generatedCount++; } var snippetTypes = new[] { "former name" };//,"market information"}; var snippetCriteria = new[] { "FORMER CONFORMED NAME", "Market Information" }; var documentIndex = new[] { 0, 1 }; for (var i = 0; i < snippetTypes.Length; i++) { formsTable = adapter.GetFormSniperQueue(snippetTypes[i], snippetCriteria[i]); foreach (var form1 in formsTable) { var newSnippet = analyzer.GetFormSnippet(form1.FormID, documentIndex[i], snippetCriteria[i]); if (newSnippet.Length == 0) { continue; } snippertsTable.AddtblSEC_Forms_snippetRow( form1.FormID, documentIndex[i], newSnippet, snippetTypes[i]); Log(newSnippet); generatedCount++; } manager.Save(snippertsTable); } return(generatedCount); }
private DtstFilingSearchResult GetDtst() { Companies = new List <string>(); MinDates = new List <DateTime>(); MaxDates = new List <DateTime>(); KeywordsPerCo = new List <List <string> >(); var manager = new SECFormsManager(); var analyzer = new SECFormsDocAnalyzer(); var addPars = int.Parse(DropProximityAdd.SelectedValue); var keywords = this.TextSearchPars.Text.Replace("\r", "").Split('\n'); var dtst = new DtstFilingSearchResult(); var table = dtst.MPSresults; var i = 0; foreach (var line in this.TextFormsList.Text.Replace("\r\n", "\n").Split('\n')) { try { if (string.IsNullOrEmpty(line)) { continue; } var formID = new Guid(line); var form = manager.GetFormsByFormID(formID)[0]; var companyIndex = Companies.IndexOf(form.CompanyName); if (companyIndex == -1) { Companies.Add(form.CompanyName); MinDates.Add(form.FormDate); MaxDates.Add(form.FormDate); KeywordsPerCo.Add(new List <string>()); companyIndex = Companies.IndexOf(form.CompanyName); } else //keep min and max date per company { if (form.FormDate < MinDates[companyIndex]) { MinDates[companyIndex] = form.FormDate; } if (form.FormDate > MaxDates[companyIndex]) { MaxDates[companyIndex] = form.FormDate; } } var keywordsThisCo = KeywordsPerCo[companyIndex]; foreach (var keyword in keywords) { if (keyword.Trim() == string.Empty) { continue; } var pars = analyzer.GetFormSubDocParagraphsWithSearch( formID, -1, keyword, addPars, CheckMultiple.Checked); if (pars.Count == 0) { continue; } i++; if (keywordsThisCo.IndexOf(keyword) == -1) { keywordsThisCo.Add(keyword); } foreach (var par in pars) { if (par.Trim() != string.Empty) { table.AddMPSresultsRow(i, form.FormDate, form.CompanyName, form.FormType, keyword, par, form.FormPartialURL, formID); } } } } catch (Exception ex) { Literal1.Text = ex.ToString(); } } return(dtst); }