Exemplo n.º 1
0
    def __grab_comment(self, aweme_id, cursor, upvote_bound=10):
        url = URL.comment_url()
        comment_params = copy.deepcopy(self.__COMMENT_LIST_PARAMS)
        comment_params['aweme_id'] = aweme_id
        comment_params['cursor'] = cursor
        params = {**comment_params, **self.common_params}
        real_url = gen_url(self.token, url, params)

        cookies = self.__COOKIES
        cookies['install_id'] = str(self.__device["install_id"])

        resp = requests.get(real_url,
                            verify=False,
                            cookies=cookies,
                            headers=self.__HEADERS)

        comment_content = json.loads(resp.content.decode("utf-8"))

        comments = comment_content.get("comments")

        for per_comment in comments:
            is_reply = per_comment.get("reply_comment")
            if is_reply:
                upvote_count = is_reply[0].get("digg_count")
                comment_info = {
                    "text": is_reply[0].get("text"),
                    "upvote_count": upvote_count,
                    "nick_name": is_reply[0]['user'].get("nickname"),
                    "user_id": is_reply[0]['user'].get("uid"),

                }
            else:
                upvote_count = per_comment.get("digg_count")
                comment_info = {
                    "text": per_comment.get("text"),
                    "upvote_count": upvote_count,
                    "nick_name": per_comment['user'].get("nickname"),
                    "user_id": per_comment['user'].get("uid"),
                }

            if int(upvote_count) < upvote_bound:
                return -2

            self.download_comment(aweme_id, **comment_info)

        # print(text,upvote_count,nick_name,user_id)

        hasmore = int(comment_content.get("hasmore"))

        return hasmore
Exemplo n.º 2
0
    def __grab_comment(self, aweme_id, cursor, upvote_bound=10):
        comment_params = copy.deepcopy(self.__COMMENT_LIST_PARAMS)
        comment_params['aweme_id'] = aweme_id
        comment_params['cursor'] = cursor
        query_params = {**comment_params, **self.common_params}
        sign = getSign(self.__get_token(), query_params)
        params = {**query_params, **sign}
        resp = requests.get(URL.comment_url(),
                            params=params,
                            verify=False,
                            headers=self.__HEADERS)
        comment_content = resp.json()

        comments = comment_content.get("comments")

        for per_comment in comments:
            is_reply = per_comment.get("reply_comment")
            if is_reply:
                upvote_count = is_reply[0].get("digg_count")
                comment_info = {
                    "text": is_reply[0].get("text"),
                    "upvote_count": upvote_count,
                    "nick_name": is_reply[0]['user'].get("nickname"),
                    "user_id": is_reply[0]['user'].get("uid"),

                }
            else:
                upvote_count = per_comment.get("digg_count")
                comment_info = {
                    "text": per_comment.get("text"),
                    "upvote_count": upvote_count,
                    "nick_name": per_comment['user'].get("nickname"),
                    "user_id": per_comment['user'].get("uid"),
                }

            print(upvote_count)

            if int(upvote_count) < upvote_bound:
                return -2

            self.download_comment(aweme_id, **comment_info)

        # print(text,upvote_count,nick_name,user_id)

        hasmore = int(comment_content.get("hasmore"))

        return hasmore