brand2csv 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. metadata +117 -93
  3. data/.gemtest +0 -0
  4. data/.gitignore +0 -10
  5. data/.rspec +0 -1
  6. data/.travis.yml +0 -14
  7. data/Gemfile +0 -14
  8. data/Gemfile.lock +0 -76
  9. data/History.txt +0 -111
  10. data/LICENCE.txt +0 -515
  11. data/Manifest.txt +0 -54
  12. data/README.md +0 -27
  13. data/Rakefile +0 -25
  14. data/bin/brand2csv +0 -100
  15. data/lib/brand2csv.rb +0 -590
  16. data/lib/brand2csv/version.rb +0 -3
  17. data/logs/aspen_08_08_1986.html +0 -598
  18. data/logs/post.rohdaten.httpfox +0 -1
  19. data/logs/post.rohdaten.mechanize +0 -1
  20. data/logs/protocol_swissreg.log +0 -86
  21. data/logs/result_01.10.2005.jsp +0 -598
  22. data/logs/sr1.jsp +0 -449
  23. data/logs/sr3.jsp +0 -598
  24. data/logs/start.jsp +0 -350
  25. data/logs/start2.jsp +0 -434
  26. data/protocol.2013.05.12.textile +0 -56
  27. data/protocol.2013.05.15.textile +0 -49
  28. data/protocol.2013.05.21.textile +0 -84
  29. data/spec/brand2csv_spec.rb +0 -62
  30. data/spec/csv_spec.rb +0 -27
  31. data/spec/data/aspectra/detail_00001_P-480296.html +0 -531
  32. data/spec/data/aspectra/detail_00002_P-482236.html +0 -531
  33. data/spec/data/aspectra/detail_00003_641074.html +0 -539
  34. data/spec/data/aspectra/first_results.html +0 -600
  35. data/spec/data/einfache_suche.html +0 -434
  36. data/spec/data/erweiterte_suche.html +0 -446
  37. data/spec/data/main.html +0 -350
  38. data/spec/data/result_short.html +0 -606
  39. data/spec/data/resultate_1.html +0 -446
  40. data/spec/data/resultate_2.html +0 -446
  41. data/spec/data/urner_wildheu/detail_00001_57862.2013.html +0 -516
  42. data/spec/data/urner_wildheu/first_results.html +0 -598
  43. data/spec/data/vereinfachte_1.html +0 -847
  44. data/spec/data/vereinfachte_detail_33.html +0 -516
  45. data/spec/detail_spec.rb +0 -28
  46. data/spec/short_spec.rb +0 -55
  47. data/spec/simple_search.rb +0 -43
  48. data/spec/spec_helper.rb +0 -34
  49. data/spec/support/core_ext/kernel.rb +0 -26
  50. data/spec/support/server_mock_helper.rb +0 -142
  51. data/spec/swissreg_spec.rb +0 -44
  52. data/spec/trademark_numbers_spec.rb +0 -21
  53. data/spec/utilities_spec.rb +0 -83
  54. data/spike.rb +0 -491
  55. data/spike_mechanize_swissreg.rb +0 -312
  56. data/spike_watir.rb +0 -58
  57. data/swissreg.rb +0 -75
@@ -1,312 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'mechanize'
3
- require 'prettyprint'
4
- require 'optparse'
5
-
6
- Useage = "Usage: #{File.basename(__FILE__)} timespan
7
- Find all brands registered in switzerland during the given timespan.
8
- The following examples valid timespan periods:
9
- 1.10.2005
10
- 1.10.2005-31.10.2005
11
- 1.10.2005, 5.10.2005-31.10.2005
12
- "
13
- OptionParser.new do |opts|
14
- opts.banner = Useage
15
- opts.on("-h", "--help", "Show this help") do |v|
16
- puts opts
17
- exit
18
- end
19
- end.parse!
20
- unless ARGV
21
- puts Useage
22
- exit 1
23
- end
24
-
25
- timespan = ARGV[0]
26
-
27
- module Brand2csv do
28
- # Weitere gesehene Fehler
29
- bekannteFehler =
30
- ['Das Datum ist ung', # ültig'
31
- 'Es wurden keine Daten gefunden.',
32
- 'Die Suchkriterien sind teilweise unzul', # ässig',
33
- 'Geben Sie mindestens ein Suchkriterium ein',
34
- 'Die Suche wurde abgebrochen, da die maximale Suchzeit von 60 Sekunden',
35
- ]
36
- end
37
- $base_uri = 'https://www.swissreg.ch'
38
- $start_uri = "#{$base_uri}/srclient/faces/jsp/start.jsp"
39
-
40
- def writeResponse(filename, body)
41
- ausgabe = File.open(filename, 'w+')
42
- ausgabe.puts body
43
- ausgabe.close
44
- end
45
-
46
- def view_state(response)
47
- if match = /javax.faces.ViewState.*?value="([^"]+)"/u.match(response.force_encoding('utf-8'))
48
- match[1]
49
- else
50
- ""
51
- end
52
- end
53
-
54
- def parse_swissreg(timespan = "01.06.2007-10.06.2007", # sollte 377 Treffer ergeben, für 01.06.2007-10.06.2007, 559271 wurde in diesem Zeitraum registriert
55
- marke = nil,
56
- nummer =nil) # nummer = "559271" ergibt genau einen treffer
57
-
58
- a = Mechanize.new { |agent|
59
- # agent.user_agent_alias = 'Mac Safari'
60
- agent.user_agent = 'Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0'
61
- # agent.redirection_limit = 5
62
- agent.verify_mode = OpenSSL::SSL::VERIFY_NONE
63
- }
64
-
65
- page = a.get $start_uri # get a cookie for the session
66
- content = a.get_file $start_uri
67
- FileUtils.makedirs 'mechanize'
68
- writeResponse('mechanize/main.html', content)
69
- state = view_state(content)
70
- data = [
71
- ["autoScroll", "0,0"],
72
- ["id_swissreg:_link_hidden_", ""],
73
- ["id_swissreg_SUBMIT", "1"],
74
- ["id_swissreg:_idcl", "id_swissreg_sub_nav_ipiNavigation_item0"],
75
- ["javax.faces.ViewState", state],
76
- ]
77
-
78
- content = a.post($start_uri, data)
79
- writeResponse('mechanize/einfache_suche.html', content.body)
80
-
81
- data = [
82
- ["autoScroll", "0,0"],
83
- ["id_swissreg:_link_hidden_", ""],
84
- ["id_swissreg_SUBMIT", "1"],
85
- ["id_swissreg:_idcl", "id_swissreg_sub_nav_ipiNavigation_item0_item3"],
86
- ["javax.faces.ViewState", state],
87
- ]
88
- # sr1 ist die einfache suche, sr3 die erweiterte Suche
89
- path = "/srclient/faces/jsp/trademark/sr3.jsp"
90
- response = a.post($base_uri + path, data)
91
- writeResponse('mechanize/erweiterte_suche.html', response.body)
92
- # Bis hier alles okay
93
- criteria = [
94
- ["autoScroll", "0,0"],
95
- ["id_swissreg:_link_hidden_", ""],
96
- # "id_swissreg:mainContent:id_cbxFormatChoice" 2 = Publikationsansicht 1 = Registeransicht
97
- ["id_swissreg:mainContent:id_cbxFormatChoice", "1"],
98
- ["id_swissreg:mainContent:id_ckbTMState", "1"], # "Hängige Gesuche 1
99
- # ["id_swissreg:mainContent:id_ckbTMState", "2"], # "Gelöschte Gesuche 2
100
- ["id_swissreg:mainContent:id_ckbTMState", "3"], # aktive Marken 3
101
- # ["id_swissreg:mainContent:id_ckbTMState", "4"], # gelöschte Marken 4
102
- ["id_swissreg:mainContent:id_cbxCountry", "CH"], # Auswahl Länder _ALL
103
- # ["id_swissreg:mainContent:id_txf_tm_no", ""], # Marken Nr
104
- ["id_swissreg:mainContent:id_txf_app_no", ""], # Gesuch Nr.
105
- ["id_swissreg:mainContent:id_txf_applicant", ""], # Inhaber/in
106
- ["id_swissreg:mainContent:id_txf_agent", ""], # Vertreter/in
107
- ["id_swissreg:mainContent:id_txf_licensee", ""], # Lizenznehmer
108
- ["id_swissreg:mainContent:id_txf_nizza_class", ""], # Nizza Klassifikation Nr.
109
- # ["id_swissreg:mainContent:id_txf_appDate", timespan], # Hinterlegungsdatum
110
- ["id_swissreg:mainContent:id_txf_expiryDate", ""], # Ablauf Schutzfrist
111
- # Markenart: Individualmarke 1 Kollektivmarke 2 Garantiemarke 3
112
- ["id_swissreg:mainContent:id_cbxTMTypeGrp", "_ALL"], # Markenart
113
- ["id_swissreg:mainContent:id_cbxTMForm", "_ALL"], # Markentyp
114
- ["id_swissreg:mainContent:id_cbxTMColorClaim", "_ALL"], # Farbanspruch
115
- ["id_swissreg:mainContent:id_txf_pub_date", ""], # Publikationsdatum
116
- # name="id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_applicant"], # />&#160;Inhaber/in</label></td>
117
-
118
- # info zu Publikationsgrund id_swissreg:mainContent:id_ckbTMPubReason
119
- ["id_swissreg:mainContent:id_ckbTMPubReason", "1"], #Neueintragungen
120
- ["id_swissreg:mainContent:id_ckbTMPubReason", "2"], #Berichtigungen
121
- ["id_swissreg:mainContent:id_ckbTMPubReason", "3"], #Verlängerungen
122
- ["id_swissreg:mainContent:id_ckbTMPubReason", "4"], #Löschungen
123
- ["id_swissreg:mainContent:id_ckbTMPubReason", "5"], #Inhaberänderungen
124
- ["id_swissreg:mainContent:id_ckbTMPubReason", "6"], #Vertreteränderungen
125
- ["id_swissreg:mainContent:id_ckbTMPubReason", "7"], #Lizenzänderungen
126
- ["id_swissreg:mainContent:id_ckbTMPubReason", "8"], #Weitere Registeränderungen
127
- ["id_swissreg:mainContent:id_ckbTMEmptyHits", "0"], # Leere Trefferliste anzeigen
128
-
129
- # Angezeigte Spalten "id_swissreg:mainContent:id_ckbTMChoice"
130
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_tm_text"], # Marke
131
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_state"], # Status
132
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_nizza_class"], # Nizza Klassifikation Nr.
133
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_no"], # disabled="disabled"], # Nummer
134
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_applicant"], # Inhaber/in
135
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_country"], # Land (Inhaber/in)
136
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_agent"], # Vertreter/in
137
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_licensee"], # Lizenznehmer/in
138
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_app_date"], # Hinterlegungsdatum
139
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_expiry_date"], # Ablauf Schutzfrist
140
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_type_grp"], # Markenart
141
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_form"], # Markentyp
142
- # ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_color_claim"], # Farbanspruch
143
-
144
- ["id_swissreg:mainContent:id_cbxHitsPerPage", "100"], # Treffer pro Seite
145
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_applicant"],
146
- ["id_swissreg:mainContent:sub_fieldset:id_submit", "suchen"],
147
- # ["id_swissreg:mainContent:sub_fieldset:id_reset", "0"],
148
- ["id_swissreg_SUBMIT", "1"],
149
- ["javax.faces.ViewState", state],
150
- ]
151
- if marke # Wortlaut der Marke
152
- puts "Marke ist #{marke}"
153
- criteria << ["id_swissreg:mainContent:id_txf_tm_text", marke]
154
- else
155
- puts "Keine Marke spezifiziert. #{marke.inspect}"
156
- criteria << ["id_swissreg:mainContent:id_txf_tm_text", ""]
157
- end
158
- if timespan # Hinterlegungsdatum
159
- puts "Hinterlegungsdatum ist #{timespan}"
160
- criteria << ["id_swissreg:mainContent:id_txf_appDate", timespan] # Hinterlegungsdatum
161
- else
162
- puts "Keine Hinterlegungsdatum spezifiziert. #{timespan.inspect}"
163
- criteria << ["id_swissreg:mainContent:id_txf_appDate", ""] # Hinterlegungsdatum
164
- end
165
- if nummer
166
- puts "nummer ist #{timespan}"
167
- criteria << ["id_swissreg:mainContent:id_txf_tm_no", nummer]
168
- else
169
- puts "Keine nummer spezifiziert. #{timespan.inspect}"
170
- criteria << ["id_swissreg:mainContent:id_txf_tm_no", ""]
171
- end
172
-
173
- path = "/srclient/faces/jsp/trademark/sr3.jsp"
174
- response = a.post($base_uri + path, criteria)
175
- writeResponse('mechanize/resultate_1.html', response.body)
176
- criteria<<['id_swissreg:mainContent:scroll_1idx2', 'idx2']
177
- if false # does not work, returns to the extended search path
178
- response = a.post($base_uri + path, criteria)
179
- writeResponse('mechanize/resultate_2.html', response.body)
180
- end
181
-
182
- if false # Will try later
183
- path = "/srclient/faces/jsp/trademark/sr3.jsp"
184
- data_detail = [
185
- ["autoScroll", "0,0"],
186
- ["id_swissreg:_link_hidden_", ""],
187
- ["id_swissreg_SUBMIT", "1"],
188
- ["id_swissreg:_idcl", "id_swissreg_sub_nav_ipiNavigation_item0_item3"],
189
- ["javax.faces.ViewState", state],
190
- ]
191
-
192
- response = a.post($base_uri + path, data_detail)
193
- https://www.swissreg.ch/srclient/faces/jsp/trademark/sr30.jsp
194
- end
195
- end #
196
- # parse_swissreg("01.06.2007-10.06.2007" , 'asp*')
197
- require 'csv'
198
- $results = []
199
- $errors = Hash.new
200
-
201
- class Marke < Struct.new(:name, :markennummer, :inhaber, :land, :hinterlegungsdatum, :zeile_1, :zeile_2, :zeile_3, :zeile_4, :plz, :ort)
202
- end
203
-
204
- AddressRegexp = /^(\d\d\d\d)\W*(.*)/
205
- LineSplit = ', '
206
- DefaultCountry = 'Schweiz'
207
-
208
- def parseAddress(nummer, inhaber)
209
- zeile_1, zeile_2, zeile_3, zeile_4, zeile_5, zeile_6 = inhaber.split(LineSplit)
210
- ort = nil
211
- plz = nil
212
- if m = AddressRegexp.match(zeile_2)
213
- zeile_2 = nil
214
- plz = m[1]; ort = m[2]
215
- elsif m = AddressRegexp.match(zeile_3)
216
- zeile_3 = nil
217
- plz = m[1]; ort = m[2]
218
- elsif m = AddressRegexp.match(zeile_4)
219
- zeile_4 = nil
220
- plz = m[1]; ort = m[2]
221
- elsif m = AddressRegexp.match(zeile_5)
222
- zeile_5 = nil
223
- plz = m[1]; ort = m[2]
224
- else
225
- puts "Achtung! Konnte Marke #{nummer} mit Inhaber #{inhaber} nicht parsen" if $VERBOSE
226
- return nil, nil, nil, nil, nil, nil, nil, nil
227
- end
228
- return zeile_1, zeile_2, zeile_3, zeile_4, zeile_5, zeile_6, plz, ort
229
- end
230
-
231
- def fetchDetails(nummer) # takes a long time!
232
- doc = nil
233
- filename = "mechanize/detail_#{nummer}.html"
234
- unless File.exists?(filename)
235
- url = "https://www.swissreg.ch/srclient/faces/jsp/trademark/sr300.jsp?language=de&section=tm&id=#{nummer}"
236
- a = Mechanize.new { |agent|
237
- # agent.user_agent_alias = 'Mac Safari'
238
- agent.user_agent = 'Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0'
239
- # agent.redirection_limit = 5
240
- agent.verify_mode = OpenSSL::SSL::VERIFY_NONE
241
- }
242
- page = a.get $start_uri # get a cookie for the session
243
- content = a.get_file url
244
- writeResponse("mechanize/detail_#{nummer}.html", content)
245
- end
246
- doc = Nokogiri::Slop(File.open(filename))
247
- path_name = "//html/body/form/div/div/fieldset/div/table/tbody/tr/td"
248
- elem = doc.xpath(path_name).first
249
- counter = 0
250
- doc.xpath(path_name).each{
251
- |td|
252
- pp "#{counter}: #{td.text}" if $VERBOSE
253
- counter += 1
254
- next unless /^inhaber/i.match(td.text)
255
- zeilen = []
256
- doc.xpath(path_name)[counter].children.each{ |child| zeilen << child.text.gsub(LineSplit,'. ') unless child.text.length == 0 } # avoid adding <br>
257
- if info = $errors[nummer]
258
- info.inhaber = zeilen.join(LineSplit)
259
- info.zeile_1, info.zeile_2, info.zeile_3, info.zeile_4, zeile_5, zeile_6, info.plz, info.ort = parseAddress(nummer, info.inhaber)
260
- $results << info
261
- else
262
- bezeichnung = doc.xpath(path_name)[15]
263
- inhaber = zeilen.join(LineSplit)
264
- zeile_1, zeile_2, zeile_3, zeile_4, zeile_5, zeile_6, plz, ort = parseAddress(nummer, inhaber)
265
- hinterlegungsdatum = doc.xpath(path_name)[7]
266
- marke = Marke.new(bezeichnung, nummer, inhaber, DefaultCountry, hinterlegungsdatum, zeile_1, zeile_2, zeile_3, zeile_4, plz, ort )
267
- $results << marke
268
- end
269
- }
270
- end
271
-
272
- def fetchresult(filename= 'mechanize/resultate_1.html')
273
- nrFailures = 0
274
- # doc = Nokogiri::Slop(inhalt)
275
- doc = Nokogiri::Slop(File.open(filename))
276
- path_name = "//html/body/form/div/div/fieldset/table/tbody/tr/td/table/tbody/tr"
277
- elem = doc.xpath(path_name).first
278
- doc.xpath(path_name).each{
279
- |elem|
280
- bezeichnung = elem.elements[1].text
281
- land = elem.elements[4].text
282
- next unless /#{DefaultCountry}/i.match(land)
283
- inhaber = elem.elements[3].text
284
- nummer = elem.elements[2].text
285
- if bezeichnung.length == 0
286
- bezeichnung = elem.children[1].children[0].children[0].children[0].attribute('src').to_s
287
- end
288
- zeile_1, zeile_2, zeile_3, zeile_4, zeile_5, zeile_6, plz, ort = parseAddress(nummer, inhaber)
289
- if zeile_1
290
- $results << Marke.new(bezeichnung, elem.elements[2].text, elem.elements[3].text, land, elem.elements[5].text,
291
- zeile_1, zeile_2, zeile_3, zeile_4, plz, ort )
292
- else
293
- nrFailures += 1
294
- $errors[nummer] = Marke.new(bezeichnung, elem.elements[2].text, elem.elements[3].text, land, elem.elements[5].text,
295
- zeile_1, zeile_2, zeile_3, zeile_4, plz, ort )
296
- end
297
- }
298
- puts "Es gab #{nrFailures} Fehler beim lesen von #{filename}" if $VERBOSE
299
- end
300
-
301
- pp 1
302
- parse_swissreg(timespan)
303
- pp 2
304
- fetchresult
305
- $errors.each{
306
- |markennummer, info|
307
- fetchDetails(markennummer)
308
- }
309
-
310
- CSV.open('ausgabe.csv', 'w') do |csv|
311
- $results.each{ |x| csv << x }
312
- end
@@ -1,58 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
- # require 'selenium'
4
- require 'watir'
5
- require 'watir-webdriver'
6
- require 'fileutils'
7
- require 'pp'
8
-
9
- # zum schnell von Hand testen
10
- # client = Selenium::WebDriver::Remote::Http::Default.new
11
- # client.timeout = 180 # seconds – default is 60
12
-
13
- $cnt = 1
14
- def saveStep(b, cnt = $cnt)
15
- name = "watir/#{__FILE__}_#{cnt}.html".sub('.rb','')
16
- ausgabe = File.open(name, "w+")
17
- ausgabe.write(b.html)
18
- $cnt += 1 if $cnt.to_i != 0
19
-
20
- end
21
- Swiss_reg_URL = 'https://www.swissreg.ch'
22
- client = Selenium::WebDriver::Remote::Http::Default.new
23
- browser = Watir::Browser.new :firefox #, :http_client => client
24
- # browser = Watir::Browser.new :chrome #, :http_client => client
25
- browser.goto Swiss_reg_URL
26
- #browser = Watir::Browser.start "https://www.swissreg.ch"
27
- saveStep(browser, 11)
28
- browser.link(:id, "id_swissreg_sub_nav_ipiNavigation_item0").click
29
- saveStep(browser, 12 )
30
- browser.link(:id, "id_swissreg_sub_nav_ipiNavigation_item0_item3").click
31
- saveStep(browser, 13 )
32
- browser.text_field(:id, "id_swissreg:mainContent:id_txf_appDate").set("1.10.2011-5.10.2011")
33
- saveStep(browser, 14 )
34
- browser.button(:value,"suchen").click
35
- saveStep(browser, 15)
36
- aus = browser.text
37
- ausgabe=File.open('watir/liste.txt','w+')
38
- ausgabe.puts aus
39
- ausgabe.close
40
- browser.link(:id, "id_swissreg:mainContent:data:2:tm_no_detail:id_detail").click# puts browser.text
41
- browser.images.each do |x|
42
- idx += 1
43
- # apparently the string accepted by the string method will not allow variable substitution
44
- location = 'img_' + idx.to_s + '.png'
45
- x.save(location)
46
- end
47
- puts browser.url
48
- pp browser.windows.each{ |w|
49
- pp w.url
50
- # saveStep(w)
51
- }
52
- # window2 = Watir::Browser.attach(:url, "https://www.swissreg.ch/srclient/faces/jsp/trademark/sr30.jsp") stackLevel too deep
53
- #window2 = Selenium::WebDriver::Firefox.attach(:url, "https://www.swissreg.ch/srclient/faces/jsp/trademark/sr30.jsp")
54
- #saveStep(window2)
55
- #aus = window2.text
56
- ausgabe=File.open('watir/detail.txt','w+')
57
- ausgabe.puts aus
58
- ausgabe.close
@@ -1,75 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
- require 'rubygems' if /^1\.8/.match(RUBY_VERSION)
4
- require 'mechanize'
5
- require 'prettyprint'
6
-
7
- def writeResponse(filename)
8
- ausgabe = File.open(filename, 'w+')
9
- ausgabe.puts @agent.page.body
10
- ausgabe.close
11
- end
12
-
13
- @agent = Mechanize.new { |agent|
14
- agent.user_agent = 'Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0'
15
- agent.verify_mode = OpenSSL::SSL::VERIFY_NONE
16
- }
17
-
18
- @agent.get_file 'https://www.swissreg.ch/srclient/faces/jsp/start.jsp'
19
- writeResponse("log_#{__LINE__}.html") # complains about missing
20
- @agent.page.links[3].click
21
- writeResponse("log_#{__LINE__}.html")
22
- @state = @agent.page.form["javax.faces.ViewState"]
23
- data = [
24
- ["autoScroll", "0,0"],
25
- ["id_swissreg:_link_hidden_", ""],
26
- ["id_swissreg_SUBMIT", "1"],
27
- ["id_swissreg:_idcl", "id_swissreg_sub_nav_ipiNavigation_item0"],
28
- ["javax.faces.ViewState", @state],
29
- ]
30
- @agent.page.form['id_swissreg:_idcl'] = 'id_swissreg_sub_nav_ipiNavigation_item0'
31
- @agent.page.forms.first.submit
32
- writeResponse("log_#{__LINE__}.html")
33
- data = [
34
- ["autoScroll", "0,0"],
35
- ["id_swissreg:_link_hidden_", ""],
36
- ["id_swissreg_SUBMIT", "1"],
37
- ["id_swissreg:_idcl", "id_swissreg_sub_nav_ipiNavigation_item0_item3"],
38
- ["javax.faces.ViewState", @state],
39
- ]
40
- @agent.page.form['id_swissreg:_idcl'] = 'id_swissreg_sub_nav_ipiNavigation_item0_item3'
41
- @agent.page.forms.first.submit
42
- writeResponse("log_#{__LINE__}.html")
43
- data = [
44
- ["autoScroll", "0,829"],
45
- ["id_swissreg:_link_hidden_", ""],
46
- ["id_swissreg:mainContent:id_ckbTMState", "1"], # "Hängige Gesuche 1
47
- ["id_swissreg:mainContent:id_ckbTMState", "3"], # "Hängige Gesuche 1
48
- ["id_swissreg:mainContent:id_txf_tm_no", ""],# Marken Nr
49
- ["id_swissreg:mainContent:id_txf_app_no", ""], # Gesuch Nr.
50
- ["id_swissreg:mainContent:id_txf_tm_text", "asp*"],
51
- ["id_swissreg:mainContent:id_txf_applicant", ""], # Inhaber/in
52
- ["id_swissreg:mainContent:id_txf_agent", ""], # Vertreter/in
53
- ["id_swissreg:mainContent:id_txf_licensee", ""], # Lizenznehmer
54
- ["id_swissreg:mainContent:id_txf_nizza_class", ""], # Nizza Klassifikation Nr.
55
- ["id_swissreg:mainContent:id_txf_appDate", "01.01.2000-31.12.2012"] ,
56
- ["id_swissreg:mainContent:id_txf_expiryDate", ""], # Ablauf Schutzfrist
57
- ["id_swissreg:mainContent:id_cbxTMTypeGrp", "_ALL"], # Markenart
58
- ["id_swissreg:mainContent:id_cbxTMForm", "_ALL"], # Markentyp
59
- ["id_swissreg:mainContent:id_cbxTMColorClaim", "_ALL"], # Farbanspruch
60
- ["id_swissreg:mainContent:id_txf_pub_date", ""], # Publikationsdatum
61
- ["id_swissreg:mainContent:id_ckbTMPubReason", '1'],
62
- ["id_swissreg:mainContent:id_ckbTMPubReason", '2'],
63
- ["id_swissreg:mainContent:id_cbxFormatChoice", "1"],
64
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_tm_text"],
65
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_applicant"],
66
- ["id_swissreg:mainContent:id_ckbTMChoice", "tm_lbl_country"],
67
- ["id_swissreg:mainContent:id_cbxHitsPerPage", 250], # Treffer pro Seite
68
- ["id_swissreg:mainContent:sub_fieldset:id_submit", "suchen"],
69
- ["id_swissreg_SUBMIT", "1"],
70
- ["id_swissreg:_idcl", ""],
71
- ["id_swissreg:_link_hidden_", ""],
72
- ["javax.faces.ViewState", @state],
73
- ]
74
- @agent.post('https://www.swissreg.ch/srclient/faces/jsp/trademark/sr3.jsp', data)
75
- writeResponse("log_#{__LINE__}.html")