BeautifulSoup 爬虫的 cookies
我被分配了一个任务,要创建一个可以检查整个网站的工具,这个工具会收集页面上的所有cookie数据,并根据这些cookie是否遵循用户数据进行分类。我对Python还不太熟悉,但我觉得这个项目对我来说很不错。请问beautifulsoup这个工具适合用来做这个吗?我们有很多网站,现在正在迁移到Drupal,所以这个工具需要能够扫描Polopoly CMS和Drupal。
3 个回答
我觉得你不需要用 BeautifulSoup
来处理这个问题。你可以用 urllib2
来建立连接,用 cookielib
来处理 cookies(小数据文件)。
Urllib2是用来发送http请求的,而BeautifulSoup是用来解析html的。你肯定需要一个http请求的库,具体是否需要BeautifulSoup要看你想做什么。
BeautifulSoup
使用起来非常简单,而且能很好地解析有问题的html,所以它很适合用来抓取网页上任何javascript的链接(即使html有点乱也没关系)。不过,你还需要其他工具来解析这些javascript,看看它们是否在和cookies互动。
如果你想查看客户端的cookie值,只需要看看http请求的头部,或者使用cookielib
(不过我个人没用过这个库)。
对于http请求,我推荐使用requests
库,查看http请求头部的方式非常简单:
response = requests.get(url)
header = response.headers
我怀疑requests
也有快捷方式可以直接访问头部的Set-Cookie
值,不过你需要自己去查一下。
你不需要用到bs4这个库,因为你只需要从cookies中获取信息。(只有在你最终需要从html代码中提取东西时,才用bs4)。
关于cookies的处理,我建议使用python-request库,它支持http会话:http://docs.python-requests.org/en/latest/user/advanced/