美文网首页
爬取看准网公司点评

爬取看准网公司点评

作者: 蝈蝈大人 | 来源:发表于2017-04-09 21:33 被阅读0次

因为即将到某家公司面试,但网上对该公司的评价不好,所以我去查看了全部评论,突发奇想我明明会爬虫了,干嘛还呆逼地10段10段地加载,所以有了下面的代码,有缺陷存在。。。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import requests
from bs4 import BeautifulSoup
import pandas as pd

headers = {'Accept':'text/html, */*; q=0.01','Accept-Encoding':'gzip, deflate, sdch','Accept-Language':'zh-CN,zh;q=0.8','User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36'}
cookies = {'Cookie':'aliyungf_tc=AQAAAD2MPjQrcwQAp4x2Dgdwc71am5e9; __c=1491732911; W_CITY_S_V=57; __g=-; isHasPushRecommentMessage=true; thirtyMinutes=true; isShowDownload=false; thirtyMinutesCount=2; pageType=2; ac="544397501@qq.com"; __t=ZPp3Vr6QMt1cLNx; __l=r=&l=%2Fgsr194222.html%3Fka%3Dpercent-review-list; __a=29429174.1491732911..1491732911.7.1.7.7; t=ZPp3Vr6QMt1cLNx; AB_T=abvb'}
url1 = 'http://www.kanzhun.com/gsrPage.json?companyId=194222&companyName=%E4%B8%AD%E6%95%B0%E9%80%9A&pageNum='
url2 = '&cityCode=&sortMethod=1&employeeStatus=0'
name2 = [] #合并name字段各列表内容
score2 = []#合并score字段各列表内容
content2 = []#合并content字段各列表内容
question2 = []
for i in range(1,8):
    url = url1 + str(i) + url2
    response = requests.get(url,headers = headers,cookies = cookies)
    soup = BeautifulSoup(response.text,'lxml')
    name = soup.find_all('p',class_='f_14 grey_99 dd_bot')
    for n in name:
        name1 = n.get_text()
        name2.append(name1)
    score = soup.find_all('span',class_='grade')
    for s in score:
        score1 = s.get_text()
        score2.append(score1)
    content = soup.find_all('h3',class_='question_title')
    for c in content:
        content1 = c.get_text()
        content11 = content1.replace('\n','')
        content2.append(content11)
    question = soup.find_all('p',class_='question_content')
    for q in question:
        question1 = q.get_text()
        question1 = question1.replace('\n','')
        question2.append(question1)
print(len(question1))

table = pd.DataFrame({'name':name2,'score':score2,'content':content2})
print(table)

简单说下代码,由于看准网的评论是用JS加载的,所以要用到抓包,直接上截图教程。


图片.png

打开Chrome浏览器,然后F12,接着点击Network,勾选Preserve log,选择XHR,右键重新加载。拖到最下面的点击查看更多。


图片.png
这时Name列表中会出现很多网址,找到连续出现的,如图是listmore这个网址,点开可以看到里面的Request URL,其中会有"pageNum="的字段,这就是存放页面的字段,自己遍历一个数字范围就能实现爬取多个页面了,这个过程就是抓包了。 图片.png

最后,因为看准网貌似改版了,里面有1、问答式;2、用户自己的评论。该死的把text内容全放在同一个class里面,这里看不懂的话自己看下源代码就知道了,所以我的代码原本是打算将多个变量组成DataFrame,方便以后分析的。可惜,以上这个原因导致"question"这个变量的长度超过了其它的变量,放不进去,所以只能放弃了。
PS:我还不懂如何提取需要“查看全文”的部分,所以有的评论只爬到了部分,这是以后要学习的地方。

相关文章

  • 爬取看准网公司点评

    因为即将到某家公司面试,但网上对该公司的评价不好,所以我去查看了全部评论,突发奇想我明明会爬虫了,干嘛还呆逼地10...

  • 爬虫作业2

    分析要爬取目标的网页的网页结构与元素标签位置信息 任务回顾 1.爬取网页:看准网 http://www.kanzh...

  • Selenium小例子

    爬取腾讯动漫 爬取某网站漫画 爬取拉勾网

  • 爬煎蛋网妹子图

    利用 BeautifulSoup + Requests 爬取 煎蛋网 妹子图 一、爬煎蛋网一页图片 此爬虫只能爬取...

  • 爬虫之爬取大众点评南京美食

    大众点评网有许多美食,可以直接通过requests和Beautiful Soup进行爬取,其他就不说了,上代码。 ...

  • Python:爬虫(2019-1-15)

    爬取当当网书籍数据 爬取当当数据,并排序输出

  • 上海大众点评美食数据可视化

    本文首先使用python爬取了上海市大众点评735条数据,各商户信息来源于这里。 第一步:数据爬取 python网...

  • Python学习笔记7——爬取大规模数据

    我们在爬取数据时,往往是连续爬取上百个页面,本篇以爬取赶集网为例,爬取大规模的数据。步骤如下: 爬取1级商品链接 ...

  • Python·爬取当当网图书信息

    爬虫实践 爬取当当网图书信息 爬取豆瓣即将上映电影爬虫 1)爬取常用的数据结构模型 2)图片爬取 3) 批量命名图片

  • 当你看到公司在看准网被黑的一塌糊涂

    我最近随手在网上一搜**公司待遇怎么样,看到一片骂声在看准网,点开看了下点评,事情还是没有编造,但是加了很多个人的...

网友评论

      本文标题:爬取看准网公司点评

      本文链接:https://www.haomeiwen.com/subject/ikljattx.html