我正在使用hpricot来读取HTML。我遇到了分段错误错误,我搜索了一些,并且有人说升级到最新版本的Ruby。我使用rails 2.3.2和ruby 1.8.7。如何解决这个错误?hpricot中的分段错误
回答
那么,根据你自己的问题,我会说“升级到最新版本的Ruby”。但是,我也遇到了hpricot segfaulting问题,这似乎与我使用线程有关。
这似乎是bug列表中的一个突出问题。我曾经历过。我的理论与HTML结构或文件中的坏/损坏字符有关,但我没有找到确切的地方。
这里是链接到的问题:
如果你可以自由选择你的HTML解析库,打开它。 为什么Hpricot的创造者最近宣布,现在应该更好地使用Nokogiri而不是HPricot。
你也可以看看HTTParty。
我有同样的段错误问题,但可悲的是无法咨询上面引用的问题,甚至通过谷歌缓存 - 从我一直在使用google搜索parse.rb segfaults必须做与编码实体或ALT字符集(重音字符也许)
的sanitize方法LIB遇到了同样的问题,在这里发表猴补丁:一年前 http://github.com/rgrove/sanitize/blob/1e1dc9681de99e32dc166f591343dfa60fc1f648/lib/sanitize/monkeypatch/hpricot.rb
从记忆,因为我最后一次使用它一下:
角度来说,Hpricot店属性在一个固定大小的缓冲区中,一些框架会生成outrag在文档属性中存在很长的哈希。在解析之前可以设置一些静态字段,以便设置此缓冲区的大小。
我记得它在网页上的文档中相当突出,尽管它现在已经消失了。
我试图解析HTML页面中有许多unicode字符和Hpricot不断崩溃。最后,我使用sanitize中的猴子补丁,并将其放入我的rails应用程序的environment.rb中。目前还没有一个单一的崩溃,因为我加入这个补丁:
关于Ruby 1.8.5尝试使用角度来说,Hpricot -v 0.6.161
为我工作。
- 1. Hpricot错误分析URI中的特殊字符
- 2. 分段错误处理程序中的分段错误
- 3. 结构中的分段错误错误
- 4. Z3中的分段错误
- 5. Linux中的分段错误
- 6. getc()中的分段错误
- 7. c中的分段错误
- 8. c中的分段错误
- 9. g ++中的分段错误
- 10. C中的分段错误
- 11. getc中的分段错误
- 12. PHP中的分段错误?
- 13. AVIFileInit()中的分段错误
- 14. pthread_create中的分段错误
- 15. 分段错误
- 16. 分段错误
- 17. 分段错误
- 18. 分段错误
- 19. 分段错误()
- 20. OpenGL“分段错误”错误
- 21. 内存分配中的分段错误
- 22. 2D阵列的分段错误错误
- 23. Z3分段错误
- 24. Eclipse分段错误
- 25. isdigit()分段错误
- 26. PHPUnit分段错误
- 27. SWFTools分段错误
- 28. strcat分段错误
- 29. CUDA分段错误
- 30. uTidylib分段错误
但是我已经使用了几乎最新版本的ruby。另外,我没有在我的代码中使用任何线程:( – user85748 2009-05-30 22:18:43
唉,没有。Ruby的最新版本是1.9.1 – 2009-05-30 22:21:06
我的主机正在使用1.8.5 即使我在我的开发机器上升级到1.9.1,我也无法在生产环境中部署代码 – user85748 2009-05-30 22:28:23