nokogiri 1.9.0.rc1-x64-mingw32 → 1.9.0-x64-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of nokogiri might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/lib/nokogiri/2.2/nokogiri.so +0 -0
- data/lib/nokogiri/2.3/nokogiri.so +0 -0
- data/lib/nokogiri/2.4/nokogiri.so +0 -0
- data/lib/nokogiri/2.5/nokogiri.so +0 -0
- data/lib/nokogiri/css/parser.rb +61 -61
- data/lib/nokogiri/version.rb +1 -1
- metadata +4 -146
- data/.autotest +0 -22
- data/.cross_rubies +0 -8
- data/.editorconfig +0 -17
- data/.gemtest +0 -0
- data/.travis.yml +0 -63
- data/CHANGELOG.md +0 -1402
- data/CONTRIBUTING.md +0 -42
- data/C_CODING_STYLE.rdoc +0 -33
- data/Gemfile +0 -23
- data/Gemfile-libxml-ruby +0 -3
- data/Manifest.txt +0 -371
- data/ROADMAP.md +0 -111
- data/Rakefile +0 -358
- data/SECURITY.md +0 -19
- data/STANDARD_RESPONSES.md +0 -47
- data/Y_U_NO_GEMSPEC.md +0 -155
- data/appveyor.yml +0 -29
- data/build_all +0 -48
- data/patches/sort-patches-by-date +0 -25
- data/suppressions/README.txt +0 -1
- data/suppressions/nokogiri_ruby-2.supp +0 -10
- data/tasks/test.rb +0 -100
- data/test/css/test_nthiness.rb +0 -226
- data/test/css/test_parser.rb +0 -386
- data/test/css/test_tokenizer.rb +0 -215
- data/test/css/test_xpath_visitor.rb +0 -96
- data/test/decorators/test_slop.rb +0 -23
- data/test/files/2ch.html +0 -108
- data/test/files/GH_1042.html +0 -18
- data/test/files/address_book.rlx +0 -12
- data/test/files/address_book.xml +0 -10
- data/test/files/atom.xml +0 -344
- data/test/files/bar/bar.xsd +0 -4
- data/test/files/bogus.xml +0 -0
- data/test/files/dont_hurt_em_why.xml +0 -422
- data/test/files/encoding.html +0 -82
- data/test/files/encoding.xhtml +0 -84
- data/test/files/exslt.xml +0 -8
- data/test/files/exslt.xslt +0 -35
- data/test/files/foo/foo.xsd +0 -4
- data/test/files/metacharset.html +0 -10
- data/test/files/namespace_pressure_test.xml +0 -1684
- data/test/files/noencoding.html +0 -47
- data/test/files/po.xml +0 -32
- data/test/files/po.xsd +0 -66
- data/test/files/saml/saml20assertion_schema.xsd +0 -283
- data/test/files/saml/saml20protocol_schema.xsd +0 -302
- data/test/files/saml/xenc_schema.xsd +0 -146
- data/test/files/saml/xmldsig_schema.xsd +0 -318
- data/test/files/shift_jis.html +0 -10
- data/test/files/shift_jis.xml +0 -5
- data/test/files/shift_jis_no_charset.html +0 -9
- data/test/files/slow-xpath.xml +0 -25509
- data/test/files/snuggles.xml +0 -3
- data/test/files/staff.dtd +0 -10
- data/test/files/staff.xml +0 -59
- data/test/files/staff.xslt +0 -32
- data/test/files/test_document_url/bar.xml +0 -2
- data/test/files/test_document_url/document.dtd +0 -4
- data/test/files/test_document_url/document.xml +0 -6
- data/test/files/tlm.html +0 -851
- data/test/files/to_be_xincluded.xml +0 -2
- data/test/files/valid_bar.xml +0 -2
- data/test/files/xinclude.xml +0 -4
- data/test/helper.rb +0 -271
- data/test/html/sax/test_parser.rb +0 -168
- data/test/html/sax/test_parser_context.rb +0 -46
- data/test/html/sax/test_parser_text.rb +0 -163
- data/test/html/sax/test_push_parser.rb +0 -87
- data/test/html/test_attributes.rb +0 -85
- data/test/html/test_builder.rb +0 -164
- data/test/html/test_document.rb +0 -722
- data/test/html/test_document_encoding.rb +0 -143
- data/test/html/test_document_fragment.rb +0 -310
- data/test/html/test_element_description.rb +0 -105
- data/test/html/test_named_characters.rb +0 -14
- data/test/html/test_node.rb +0 -212
- data/test/html/test_node_encoding.rb +0 -91
- data/test/namespaces/test_additional_namespaces_in_builder_doc.rb +0 -14
- data/test/namespaces/test_namespaces_aliased_default.rb +0 -24
- data/test/namespaces/test_namespaces_in_builder_doc.rb +0 -75
- data/test/namespaces/test_namespaces_in_cloned_doc.rb +0 -31
- data/test/namespaces/test_namespaces_in_created_doc.rb +0 -75
- data/test/namespaces/test_namespaces_in_parsed_doc.rb +0 -80
- data/test/namespaces/test_namespaces_preservation.rb +0 -31
- data/test/test_convert_xpath.rb +0 -135
- data/test/test_css_cache.rb +0 -47
- data/test/test_encoding_handler.rb +0 -48
- data/test/test_memory_leak.rb +0 -226
- data/test/test_nokogiri.rb +0 -138
- data/test/test_soap4r_sax.rb +0 -52
- data/test/test_xslt_transforms.rb +0 -314
- data/test/xml/node/test_save_options.rb +0 -28
- data/test/xml/node/test_subclass.rb +0 -44
- data/test/xml/sax/test_parser.rb +0 -402
- data/test/xml/sax/test_parser_context.rb +0 -115
- data/test/xml/sax/test_parser_text.rb +0 -202
- data/test/xml/sax/test_push_parser.rb +0 -265
- data/test/xml/test_attr.rb +0 -96
- data/test/xml/test_attribute_decl.rb +0 -86
- data/test/xml/test_builder.rb +0 -353
- data/test/xml/test_c14n.rb +0 -180
- data/test/xml/test_cdata.rb +0 -54
- data/test/xml/test_comment.rb +0 -40
- data/test/xml/test_document.rb +0 -982
- data/test/xml/test_document_encoding.rb +0 -31
- data/test/xml/test_document_fragment.rb +0 -312
- data/test/xml/test_dtd.rb +0 -187
- data/test/xml/test_dtd_encoding.rb +0 -31
- data/test/xml/test_element_content.rb +0 -56
- data/test/xml/test_element_decl.rb +0 -73
- data/test/xml/test_entity_decl.rb +0 -122
- data/test/xml/test_entity_reference.rb +0 -262
- data/test/xml/test_namespace.rb +0 -96
- data/test/xml/test_node.rb +0 -1379
- data/test/xml/test_node_attributes.rb +0 -115
- data/test/xml/test_node_encoding.rb +0 -75
- data/test/xml/test_node_inheritance.rb +0 -32
- data/test/xml/test_node_reparenting.rb +0 -661
- data/test/xml/test_node_set.rb +0 -828
- data/test/xml/test_parse_options.rb +0 -64
- data/test/xml/test_processing_instruction.rb +0 -30
- data/test/xml/test_reader.rb +0 -620
- data/test/xml/test_reader_encoding.rb +0 -134
- data/test/xml/test_relax_ng.rb +0 -60
- data/test/xml/test_schema.rb +0 -142
- data/test/xml/test_syntax_error.rb +0 -36
- data/test/xml/test_text.rb +0 -69
- data/test/xml/test_unparented_node.rb +0 -483
- data/test/xml/test_xinclude.rb +0 -83
- data/test/xml/test_xpath.rb +0 -470
- data/test/xslt/test_custom_functions.rb +0 -133
- data/test/xslt/test_exception_handling.rb +0 -37
data/test/css/test_tokenizer.rb
DELETED
@@ -1,215 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
|
3
|
-
require "helper"
|
4
|
-
|
5
|
-
module Nokogiri
|
6
|
-
module CSS
|
7
|
-
class Tokenizer
|
8
|
-
alias :scan :scan_setup
|
9
|
-
end
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
module Nokogiri
|
14
|
-
module CSS
|
15
|
-
class TestTokenizer < Nokogiri::TestCase
|
16
|
-
def setup
|
17
|
-
super
|
18
|
-
@scanner = Nokogiri::CSS::Tokenizer.new
|
19
|
-
end
|
20
|
-
|
21
|
-
def test_has
|
22
|
-
@scanner.scan("a:has(b)")
|
23
|
-
assert_tokens(
|
24
|
-
[[:IDENT, "a"], [":", ":"], [:HAS, "has("], [:IDENT, "b"], [:RPAREN, ")"]],
|
25
|
-
@scanner)
|
26
|
-
end
|
27
|
-
|
28
|
-
def test_unicode
|
29
|
-
@scanner.scan("a日本語")
|
30
|
-
assert_tokens([[:IDENT, 'a日本語']], @scanner)
|
31
|
-
end
|
32
|
-
|
33
|
-
def test_tokenize_bad_single_quote
|
34
|
-
@scanner.scan("'")
|
35
|
-
assert_tokens([["'", "'"]], @scanner)
|
36
|
-
end
|
37
|
-
|
38
|
-
def test_not_equal
|
39
|
-
@scanner.scan("h1[a!='Tender Lovemaking']")
|
40
|
-
assert_tokens([ [:IDENT, 'h1'],
|
41
|
-
[:LSQUARE, '['],
|
42
|
-
[:IDENT, 'a'],
|
43
|
-
[:NOT_EQUAL, '!='],
|
44
|
-
[:STRING, "'Tender Lovemaking'"],
|
45
|
-
[:RSQUARE, ']'],
|
46
|
-
], @scanner)
|
47
|
-
end
|
48
|
-
|
49
|
-
def test_negation
|
50
|
-
@scanner.scan("p:not(.a)")
|
51
|
-
assert_tokens([ [:IDENT, 'p'],
|
52
|
-
[:NOT, ':not('],
|
53
|
-
['.', '.'],
|
54
|
-
[:IDENT, 'a'],
|
55
|
-
[:RPAREN, ')'],
|
56
|
-
], @scanner)
|
57
|
-
end
|
58
|
-
|
59
|
-
def test_function
|
60
|
-
@scanner.scan("script comment()")
|
61
|
-
assert_tokens([ [:IDENT, 'script'],
|
62
|
-
[:S, ' '],
|
63
|
-
[:FUNCTION, 'comment('],
|
64
|
-
[:RPAREN, ')'],
|
65
|
-
], @scanner)
|
66
|
-
end
|
67
|
-
|
68
|
-
def test_preceding_selector
|
69
|
-
@scanner.scan("E ~ F")
|
70
|
-
assert_tokens([ [:IDENT, 'E'],
|
71
|
-
[:TILDE, ' ~ '],
|
72
|
-
[:IDENT, 'F'],
|
73
|
-
], @scanner)
|
74
|
-
end
|
75
|
-
|
76
|
-
def test_scan_attribute_string
|
77
|
-
@scanner.scan("h1[a='Tender Lovemaking']")
|
78
|
-
assert_tokens([ [:IDENT, 'h1'],
|
79
|
-
[:LSQUARE, '['],
|
80
|
-
[:IDENT, 'a'],
|
81
|
-
[:EQUAL, '='],
|
82
|
-
[:STRING, "'Tender Lovemaking'"],
|
83
|
-
[:RSQUARE, ']'],
|
84
|
-
], @scanner)
|
85
|
-
@scanner.scan('h1[a="Tender Lovemaking"]')
|
86
|
-
assert_tokens([ [:IDENT, 'h1'],
|
87
|
-
[:LSQUARE, '['],
|
88
|
-
[:IDENT, 'a'],
|
89
|
-
[:EQUAL, '='],
|
90
|
-
[:STRING, '"Tender Lovemaking"'],
|
91
|
-
[:RSQUARE, ']'],
|
92
|
-
], @scanner)
|
93
|
-
end
|
94
|
-
|
95
|
-
def test_scan_id
|
96
|
-
@scanner.scan('#foo')
|
97
|
-
assert_tokens([ [:HASH, '#foo'] ], @scanner)
|
98
|
-
end
|
99
|
-
|
100
|
-
def test_scan_pseudo
|
101
|
-
@scanner.scan('a:visited')
|
102
|
-
assert_tokens([ [:IDENT, 'a'],
|
103
|
-
[':', ':'],
|
104
|
-
[:IDENT, 'visited']
|
105
|
-
], @scanner)
|
106
|
-
end
|
107
|
-
|
108
|
-
def test_scan_star
|
109
|
-
@scanner.scan('*')
|
110
|
-
assert_tokens([ ['*', '*'], ], @scanner)
|
111
|
-
end
|
112
|
-
|
113
|
-
def test_scan_class
|
114
|
-
@scanner.scan('x.awesome')
|
115
|
-
assert_tokens([ [:IDENT, 'x'],
|
116
|
-
['.', '.'],
|
117
|
-
[:IDENT, 'awesome'],
|
118
|
-
], @scanner)
|
119
|
-
end
|
120
|
-
|
121
|
-
def test_scan_greater
|
122
|
-
@scanner.scan('x > y')
|
123
|
-
assert_tokens([ [:IDENT, 'x'],
|
124
|
-
[:GREATER, ' > '],
|
125
|
-
[:IDENT, 'y']
|
126
|
-
], @scanner)
|
127
|
-
end
|
128
|
-
|
129
|
-
def test_scan_slash
|
130
|
-
@scanner.scan('x/y')
|
131
|
-
assert_tokens([ [:IDENT, 'x'],
|
132
|
-
[:SLASH, '/'],
|
133
|
-
[:IDENT, 'y']
|
134
|
-
], @scanner)
|
135
|
-
end
|
136
|
-
|
137
|
-
def test_scan_doubleslash
|
138
|
-
@scanner.scan('x//y')
|
139
|
-
assert_tokens([ [:IDENT, 'x'],
|
140
|
-
[:DOUBLESLASH, '//'],
|
141
|
-
[:IDENT, 'y']
|
142
|
-
], @scanner)
|
143
|
-
end
|
144
|
-
|
145
|
-
def test_scan_function_selector
|
146
|
-
@scanner.scan('x:eq(0)')
|
147
|
-
assert_tokens([ [:IDENT, 'x'],
|
148
|
-
[':', ':'],
|
149
|
-
[:FUNCTION, 'eq('],
|
150
|
-
[:NUMBER, "0"],
|
151
|
-
[:RPAREN, ')'],
|
152
|
-
], @scanner)
|
153
|
-
end
|
154
|
-
|
155
|
-
def test_scan_nth
|
156
|
-
@scanner.scan('x:nth-child(5n+3)')
|
157
|
-
assert_tokens([ [:IDENT, 'x'],
|
158
|
-
[':', ':'],
|
159
|
-
[:FUNCTION, 'nth-child('],
|
160
|
-
[:NUMBER, '5'],
|
161
|
-
[:IDENT, 'n'],
|
162
|
-
[:PLUS, '+'],
|
163
|
-
[:NUMBER, '3'],
|
164
|
-
[:RPAREN, ')'],
|
165
|
-
], @scanner)
|
166
|
-
|
167
|
-
@scanner.scan('x:nth-child(-1n+3)')
|
168
|
-
assert_tokens([ [:IDENT, 'x'],
|
169
|
-
[':', ':'],
|
170
|
-
[:FUNCTION, 'nth-child('],
|
171
|
-
[:NUMBER, '-1'],
|
172
|
-
[:IDENT, 'n'],
|
173
|
-
[:PLUS, '+'],
|
174
|
-
[:NUMBER, '3'],
|
175
|
-
[:RPAREN, ')'],
|
176
|
-
], @scanner)
|
177
|
-
|
178
|
-
@scanner.scan('x:nth-child(-n+3)')
|
179
|
-
assert_tokens([ [:IDENT, 'x'],
|
180
|
-
[':', ':'],
|
181
|
-
[:FUNCTION, 'nth-child('],
|
182
|
-
[:IDENT, '-n'],
|
183
|
-
[:PLUS, '+'],
|
184
|
-
[:NUMBER, '3'],
|
185
|
-
[:RPAREN, ')'],
|
186
|
-
], @scanner)
|
187
|
-
end
|
188
|
-
|
189
|
-
def test_significant_space
|
190
|
-
@scanner.scan('x :first-child [a] [b]')
|
191
|
-
assert_tokens([ [:IDENT, 'x'],
|
192
|
-
[:S, ' '],
|
193
|
-
[':', ':'],
|
194
|
-
[:IDENT, 'first-child'],
|
195
|
-
[:S, ' '],
|
196
|
-
[:LSQUARE, '['],
|
197
|
-
[:IDENT, 'a'],
|
198
|
-
[:RSQUARE, ']'],
|
199
|
-
[:S, ' '],
|
200
|
-
[:LSQUARE, '['],
|
201
|
-
[:IDENT, 'b'],
|
202
|
-
[:RSQUARE, ']'],
|
203
|
-
], @scanner)
|
204
|
-
end
|
205
|
-
|
206
|
-
def assert_tokens(tokens, scanner)
|
207
|
-
toks = []
|
208
|
-
while tok = @scanner.next_token
|
209
|
-
toks << tok
|
210
|
-
end
|
211
|
-
assert_equal(tokens, toks)
|
212
|
-
end
|
213
|
-
end
|
214
|
-
end
|
215
|
-
end
|
@@ -1,96 +0,0 @@
|
|
1
|
-
require "helper"
|
2
|
-
|
3
|
-
module Nokogiri
|
4
|
-
module CSS
|
5
|
-
class TestXPathVisitor < Nokogiri::TestCase
|
6
|
-
def setup
|
7
|
-
super
|
8
|
-
@parser = Nokogiri::CSS::Parser.new
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_not_simple_selector
|
12
|
-
assert_xpath('//ol/*[not(self::li)]', @parser.parse('ol > *:not(li)'))
|
13
|
-
end
|
14
|
-
|
15
|
-
def test_not_last_child
|
16
|
-
assert_xpath('//ol/*[not(count(following-sibling::*) = 0)]',
|
17
|
-
@parser.parse('ol > *:not(:last-child)'))
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_not_only_child
|
21
|
-
assert_xpath('//ol/*[not(count(preceding-sibling::*) = 0 and count(following-sibling::*) = 0)]',
|
22
|
-
@parser.parse('ol > *:not(:only-child)'))
|
23
|
-
end
|
24
|
-
|
25
|
-
def test_function_calls_allow_at_params
|
26
|
-
assert_xpath("//a[foo(., @href)]", @parser.parse('a:foo(@href)'))
|
27
|
-
assert_xpath("//a[foo(., @a, b)]", @parser.parse('a:foo(@a, b)'))
|
28
|
-
assert_xpath("//a[foo(., a, 10)]", @parser.parse('a:foo(a, 10)'))
|
29
|
-
end
|
30
|
-
|
31
|
-
def test_namespace_conversion
|
32
|
-
assert_xpath("//aaron:a", @parser.parse('aaron|a'))
|
33
|
-
assert_xpath("//a", @parser.parse('|a'))
|
34
|
-
end
|
35
|
-
|
36
|
-
def test_namespaced_attribute_conversion
|
37
|
-
assert_xpath("//a[@flavorjones:href]", @parser.parse('a[flavorjones|href]'))
|
38
|
-
assert_xpath("//a[@href]", @parser.parse('a[|href]'))
|
39
|
-
assert_xpath("//*[@flavorjones:href]", @parser.parse('*[flavorjones|href]'))
|
40
|
-
end
|
41
|
-
|
42
|
-
def test_unknown_psuedo_classes_get_pushed_down
|
43
|
-
assert_xpath("//a[aaron(.)]", @parser.parse('a:aaron'))
|
44
|
-
end
|
45
|
-
|
46
|
-
def test_unknown_functions_get_dot_plus_args
|
47
|
-
assert_xpath("//a[aaron(.)]", @parser.parse('a:aaron()'))
|
48
|
-
assert_xpath("//a[aaron(., 12)]", @parser.parse('a:aaron(12)'))
|
49
|
-
assert_xpath("//a[aaron(., 12, 1)]", @parser.parse('a:aaron(12, 1)'))
|
50
|
-
end
|
51
|
-
|
52
|
-
def test_class_selectors
|
53
|
-
assert_xpath "//*[contains(concat(' ', normalize-space(@class), ' '), ' red ')]",
|
54
|
-
@parser.parse(".red")
|
55
|
-
end
|
56
|
-
|
57
|
-
def test_pipe
|
58
|
-
assert_xpath "//a[@id = 'Boing' or starts-with(@id, concat('Boing', '-'))]",
|
59
|
-
@parser.parse("a[id|='Boing']")
|
60
|
-
end
|
61
|
-
|
62
|
-
def test_custom_functions
|
63
|
-
visitor = Class.new(XPathVisitor) do
|
64
|
-
attr_accessor :awesome
|
65
|
-
def visit_function_aaron node
|
66
|
-
@awesome = true
|
67
|
-
'aaron() = 1'
|
68
|
-
end
|
69
|
-
end.new
|
70
|
-
ast = @parser.parse('a:aaron()').first
|
71
|
-
assert_equal 'a[aaron() = 1]', visitor.accept(ast)
|
72
|
-
assert visitor.awesome
|
73
|
-
end
|
74
|
-
|
75
|
-
def test_custom_psuedo_classes
|
76
|
-
visitor = Class.new(XPathVisitor) do
|
77
|
-
attr_accessor :awesome
|
78
|
-
def visit_pseudo_class_aaron node
|
79
|
-
@awesome = true
|
80
|
-
'aaron() = 1'
|
81
|
-
end
|
82
|
-
end.new
|
83
|
-
ast = @parser.parse('a:aaron').first
|
84
|
-
assert_equal 'a[aaron() = 1]', visitor.accept(ast)
|
85
|
-
assert visitor.awesome
|
86
|
-
end
|
87
|
-
|
88
|
-
def assert_xpath expecteds, asts
|
89
|
-
expecteds = [expecteds].flatten
|
90
|
-
expecteds.zip(asts).each do |expected, actual|
|
91
|
-
assert_equal expected, actual.to_xpath
|
92
|
-
end
|
93
|
-
end
|
94
|
-
end
|
95
|
-
end
|
96
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require "helper"
|
2
|
-
|
3
|
-
module Nokogiri
|
4
|
-
class TestSlop < Nokogiri::TestCase
|
5
|
-
def test_description_tag
|
6
|
-
doc = Nokogiri.Slop(<<-eoxml)
|
7
|
-
<item>
|
8
|
-
<title>foo</title>
|
9
|
-
<description>this is the foo thing</description>
|
10
|
-
</item>
|
11
|
-
eoxml
|
12
|
-
|
13
|
-
assert doc.item.respond_to?(:title)
|
14
|
-
assert_equal 'foo', doc.item.title.text
|
15
|
-
|
16
|
-
assert doc.item.respond_to?(:_description), 'should have description'
|
17
|
-
assert_equal 'this is the foo thing', doc.item._description.text
|
18
|
-
|
19
|
-
assert !doc.item.respond_to?(:foo)
|
20
|
-
assert_raise(NoMethodError) { doc.item.foo }
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
data/test/files/2ch.html
DELETED
@@ -1,108 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
-
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
-
<head>
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
|
5
|
-
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
6
|
-
<meta http-equiv="Content-Style-Type" content="text/css" />
|
7
|
-
<meta name="Description" CONTENT="�u�n�b�L���O�v����u���ӂ̂������v�܂ł���L���J�o�[���鋐��f���Q�w�Q�����˂�x�ւ悤�����I">
|
8
|
-
<meta name="KeyWords" CONTENT="�Q�����˂�, �f����, 2ch, BBS">
|
9
|
-
<meta name="Author" CONTENT="�Q�����˂�">
|
10
|
-
<meta name="verify-v1" content="hMevVuWJIPYrUj9ItfRJByoLNIpyhnrWaywiH+IFocU=" />
|
11
|
-
<title>�Q�����˂�f���ւ悤����</title>
|
12
|
-
<style type="text/css" media="all">
|
13
|
-
@import url(2ch_top.css);
|
14
|
-
</style>
|
15
|
-
<script>
|
16
|
-
<!--
|
17
|
-
function fcs(){document.f.STR.focus();}
|
18
|
-
-->
|
19
|
-
</script>
|
20
|
-
</head>
|
21
|
-
|
22
|
-
<body onLoad="document.f.STR.focus()">
|
23
|
-
|
24
|
-
<div id="wrapper">
|
25
|
-
<div id="header">
|
26
|
-
<div id="header_inside">
|
27
|
-
<div class="header_left">
|
28
|
-
<a href="http://www2.2ch.net/2ch.html"><img src="images/2ch_logo.gif" width="151" height="40" alt="�Q�����˂�" align="middle" border="0" /><a href="http://www2.2ch.net/2ch.html">�f����</a>�b
|
29
|
-
<a href="http://c.2ch.net/">imode</a>�b<a href="http://orz.2ch.io/top.html">�g��orz</a>�b<a href="http://p2.2ch.net/">�r���[�Ap2</a>
|
30
|
-
</div>
|
31
|
-
|
32
|
-
<div class="senna_banner">
|
33
|
-
|
34
|
-
<a href="http://razil.jp/product/senna/"><img src="images/senna88x31.gif" width="88" height="31" alt="Senna" align="middle" border="0" /></a>
|
35
|
-
</div>
|
36
|
-
<div class="header_right">
|
37
|
-
<!---find 2ch form --->
|
38
|
-
<form method=GET name=f action="http://find.2ch.net/" style="margin:0px">
|
39
|
-
<input size=25 name=STR value="" class="form_input">
|
40
|
-
<select name="TYPE" class="form_select">
|
41
|
-
<option value="BODY">�{��</option>
|
42
|
-
|
43
|
-
<option value="TITLE" selected>�X���b�h�^�C�g��</option>
|
44
|
-
<option value="POSTERS">���e��</option>
|
45
|
-
</select>
|
46
|
-
<input type="image" src="images/search_button.gif" alt="����" class="form_button"><br />
|
47
|
-
<input type=hidden name=BBS value=ALL>
|
48
|
-
|
49
|
-
<input type=hidden name=ENCODING value=SJIS>
|
50
|
-
<input type=hidden name=COUNT value=50>
|
51
|
-
<div class="caption">�{�������⌟���ݒ��<a href="http://find.2ch.net/moritapo/notlogin.php">���O�C��</a><a href="http://find.2ch.net/moritapo/welcome/">»�ڍ�</a></div>
|
52
|
-
|
53
|
-
</form>
|
54
|
-
</div>
|
55
|
-
</div><!--- header_inside --->
|
56
|
-
</div><!--- end of header--->
|
57
|
-
|
58
|
-
<div id="under_header">
|
59
|
-
<a href="http://newsnavi.2ch.net/">�j���[�X</a>�b<a href="http://headline.2ch.net/bbynews/">�w�b�h���C��</a>�b<a href="http://epg.2ch.net/">�e���r��</a>�b<a href="http://www.2ch.net/kakolog.html">�ߋ����O�q��</a>
|
60
|
-
|
61
|
-
</div><!--- end of under header--->
|
62
|
-
|
63
|
-
<div id="main">
|
64
|
-
<iframe src="http://cast.texpo.jp/2chtop/main_frame.html" width="100%" height="550" scrolling="no" border="0" frameborder="0"></iframe>
|
65
|
-
</div><!--- end of main--->
|
66
|
-
|
67
|
-
<div id="footer_menu">
|
68
|
-
<div class="guide">
|
69
|
-
<a href="http://info.2ch.net/guide/">�g����������</a>�b<a href="http://info.2ch.net/guide/adv.html#saku_guide">�폜�K�C�h���C��</a>�b<a href="http://www2.2ch.net/2ch2.html">�g���Ń��j���[</a>�b<a href="http://info.2ch.net/blog.html">�Ђ�䂫���L</a>�b<a href="http://www.2ch.net/ad.html">�L���̂��ē�</a>
|
70
|
-
|
71
|
-
</div>
|
72
|
-
|
73
|
-
<div class="service">
|
74
|
-
<iframe src="http://cast.texpo.jp/2chtop/moritapo_frame.html" width="100%" height="50" scrolling="no" border="0" frameborder="0"></iframe>
|
75
|
-
</div>
|
76
|
-
|
77
|
-
<div class="banner">
|
78
|
-
<a href=http://livede55.com/ target="_blank"><img
|
79
|
-
src="http://www2.livede55.com/2ch_468_60_13.gif"
|
80
|
-
width="468" height="60" border="0" alt=���C�u�`���b�g></a><br>
|
81
|
-
<br>
|
82
|
-
<A href="http://www.bb-chat.tv/" target=_blank><IMG height=60 src="http://img.bbchat.tv/images/bannar/46860-3.gif" width=468 border=0></A><br>
|
83
|
-
</div>
|
84
|
-
|
85
|
-
<div class="condition">
|
86
|
-
�Q�����˂�̂����p�͗��p�Ҋe�ʂ̂����f�ɂ��C�����Ă��܂��b<a href="precautions.html">2ch�̃f�[�^���p�ɂ���</a>
|
87
|
-
|
88
|
-
</div>
|
89
|
-
</div><!--- end of footer_menu--->
|
90
|
-
|
91
|
-
|
92
|
-
<div id="footer">
|
93
|
-
<div class="footer_left">
|
94
|
-
<a href="http://www.bunka.go.jp/jiyuriyo/" target="_blank">
|
95
|
-
<img src="http://www.dd.iij4u.or.jp/~cap/y_3copyok.jpg" width="184" height="31" border="0" alt="���R���p�}�[�N" /></a>
|
96
|
-
</div>
|
97
|
-
|
98
|
-
<div class="footer_right">
|
99
|
-
<a href="http://count.2ch.net/?index" target="_blank">
|
100
|
-
<img src="http://count.2ch.net/ct.php/index" width="88" height="31" border="0" alt="���������J�E���^�["></a>
|
101
|
-
|
102
|
-
|
103
|
-
</div>
|
104
|
-
</div><!---end of footer--->
|
105
|
-
|
106
|
-
</div><!--- end of wrapper--->
|
107
|
-
</body>
|
108
|
-
</html>
|
data/test/files/GH_1042.html
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
-
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
-
<head></head>
|
4
|
-
<body>
|
5
|
-
<table align="center" border>
|
6
|
-
<tr><th>foo1.0</th><th>bar</th><th>bazz</th></tr>
|
7
|
-
<tr><td>foo1.1</td><td>bar</td><td>bazz</td></tr>
|
8
|
-
</table>
|
9
|
-
<table align="center" border>
|
10
|
-
<tr><th>foo2.0</th><th>bar</th><th>bazz</th></tr>
|
11
|
-
<tr><td>foo2.1</td><td>bar</td><td>bazz</td></tr>
|
12
|
-
</table>
|
13
|
-
<table align="center" border>
|
14
|
-
<tr><th>foo3.0</th><th>bar</th><th>bazz</th></tr>
|
15
|
-
<tr><td>foo3.1</td><td>bar</td><td>bazz</td></tr>
|
16
|
-
</table>
|
17
|
-
</body>
|
18
|
-
</html>
|