Hi,
Thanks for asking this question. There are a bunch of options you're setting, and they're combining in a nonobvious way here.
Notably, you're using `strict`, which tells Nokogiri to raise an exception when a syntax error is encountered, rather than continuing parsing and logging it in the `#errors` attribute.
If you don't set `strict` (or, equivalently, set `recover`) you'll actually see the following errors:
```
puts doc.errors
# Failure to process entity pth0
# Entity 'pth0' not defined
```
which actually tells you what's going on when you set the other options -- it's trying and failing to resolve a network URI.
Make sense so far?
OK, so the default behavior for Nokogiri (probably for exactly the reasons you're investigating) is to NOT allow network connections. If you want to make an outbound connection, you'll have to set `nononet`. I'm able to hit a local system network URI if I set that option.
Make sense?