6
7
8
9
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
|
# File 'lib/fetch_util/regulatory/page.rb', line 6
def page_record(requested_uri)
fetch_record("page:#{requested_uri}", requested_uri.to_s, fallback: empty_page_record, require_success: false) do |_body, response|
final_uri = parse_http_uri(response.url)
final_path = request_target(final_uri)
xrobotstag = []
= []
= []
= []
response_chain(response).each do |step|
path = request_target(parse_http_uri(step.url))
xrobotstag.concat((step., path: path))
.concat((step., path: path))
, step_policies = (
reservation: (step., "tdm-reservation"),
policy_url: (step., "tdm-policy"),
path: path
)
.concat()
.concat(step_policies)
end
metarobots = []
tdmmeta = []
meta_policies = []
human = []
if html_content?(response., response.body)
meta_tags = parse_meta_tags(response.body)
metarobots = sort_generic_signals((meta_tags, path: final_path))
tdmmeta, meta_policies = (meta_tags, path: final_path)
human = sort_generic_signals((response.body, path: final_path))
end
{
"final_url" => final_uri.to_s,
"signals" => {
"xrobotstag" => sort_generic_signals(xrobotstag),
"metarobots" => metarobots,
"tdmheaders" => sort_generic_signals(),
"tdmmeta" => sort_generic_signals(tdmmeta),
"contentusageheader" => sort_usage_preference_signals(),
"human" => human
},
"policies" => dedupe_policy_refs( + meta_policies)
}
end
end
|