YusukeIwaki/puppeteer-ruby

JSON parse escape error. "invalid escaped character"

Closed this issue · 1 comments

Step To Reproduce / Observed behavior

browser = Puppeteer.launch(
  headless: false,
)
page = browser.pages.first
page.goto('https://colourpop.com/')
page.content # errors out

The error:

Traceback (most recent call last):
	13: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/puppeteer-ruby-0.40.3/lib/puppeteer/web_socket.rb:64:in `block in initialize'
	12: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/puppeteer-ruby-0.40.3/lib/puppeteer/web_socket.rb:97:in `wait_for_data'
	11: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/websocket-driver-0.7.5/lib/websocket/driver/client.rb:63:in `parse'
	10: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/websocket-driver-0.7.5/lib/websocket/driver/hybi.rb:118:in `parse'
	 9: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/websocket-driver-0.7.5/lib/websocket/driver/hybi.rb:390:in `emit_frame'
	 8: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/websocket-driver-0.7.5/lib/websocket/driver/hybi.rb:408:in `emit_message'
	 7: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/websocket-driver-0.7.5/lib/websocket/driver/event_emitter.rb:38:in `emit'
	 6: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/websocket-driver-0.7.5/lib/websocket/driver/event_emitter.rb:38:in `each'
	 5: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/websocket-driver-0.7.5/lib/websocket/driver/event_emitter.rb:39:in `block in emit'
	 4: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/puppeteer-ruby-0.40.3/lib/puppeteer/web_socket.rb:92:in `block in setup'
	 3: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/puppeteer-ruby-0.40.3/lib/puppeteer/web_socket.rb:148:in `handle_on_message'
	 2: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/puppeteer-ruby-0.40.3/lib/puppeteer/web_socket_transport.rb:23:in `block in initialize'
	 1: from /Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/puppeteer-ruby-0.40.3/lib/puppeteer/connection.rb:47:in `block in initialize'
/Users/amirsharif/.rvm/gems/ruby-2.7.5/gems/puppeteer-ruby-0.40.3/lib/puppeteer/connection.rb:47:in `parse': invalid escaped character (after result.result.value) at line 1, column 389024 [parse.c:240]

Expected behavior

No crash.

Environment

ruby 2.7.5p203 (2021-11-24 revision f69aeb8314) [x86_64-darwin20]

This error seems to be related to Oj.rails

When I remove this line, it functions as normal.

Here is the contents of HTML that led to an error.