关于使用beatifulsoup4解析html卡死的问题

本地环境,mac os ,python3.4, beatifulsoup4.4
服务器环境,ubuntu14.4, python3.4 ,beatifulsoup4.4
代码段:
抓取源url: http://chart.cp.360.cn/kaijia...

contents_string = bytes.decode(contents, 'GBK')
soup = bs4.BeautifulSoup(contents, 'lxml', from_encoding='GBK')

这段代码在我本地的正常的,没有任何问题,但是发布到线上,在执行这段代码的的时候
程序会无限的卡死,也不会报任何错误,执行不了下一句代码!!!我已经找不到任何原因了,有了解这个情况或者能告诉我该如何去检测的麻烦告知,谢谢

阅读 4k
2 个回答

随便猜猜看:lxml问题?
然后整个语句包含在try/except/finally里,所以没有提醒。

我估摸着同JS加载有关系,不过这种类型一般你试验下
selenium + PhantomJS()进行浏览器模拟,这组合的好处非常多,比如延迟加载的js,比如需要点击后产生的数据内容,总之模拟浏览器操作,坏处就是处理速度慢,哈哈。
我是MAC 安装办法如下,windows 自己百度吧,先安装selenium后安装phantomjs

pip install selenium
brew install phantoms

另外你的代码我修改如下,你试验下

from selenium import webdriver
from bs4 import BeautifulSoup

url = 'http://chart.cp.360.cn/kaijiang/syy?sb_spm=52857fdea7dba853e8bc7ee206a9b109'
browser = webdriver.PhantomJS()
browser.get(url)
soup = BeautifulSoup(browser.page_source,'lxml')
print(soup)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题