Python - Просмотр бота? - PullRequest
       13

Python - Просмотр бота?

0 голосов
/ 05 февраля 2019

Я пытаюсь написать код для viewbot.

Код:

import requests
from bs4 import BeautifulSoup
import html5lib
import urllib
import argparse, os, time
import urllib.parse, random

headers = {
    'user-agent':'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Mobile Safari/537.36'
    }
login_data = {
    'login': 'xxx',
    'pass': 'xxx',
    'back_url': '' 
    }

Вход на сайт работает правильно.

Списки людей:

def getPeopleLinks(page):
    links = []
    for link in soups.find_all('a'):
        url = link.get('href')
        if url:
            if 'profile/' in url:
                links.append(url)
    return links

Работает ...

И другой код:

with requests.Session() as session:
        url = "https://xxxxxx.com/Login/?form_login=1"

        post = session.post(url, data=login_data, headers=headers)
print (post.status_code)
print (post.cookies)
r = session.get("https://xxxxxxx.com/online/GIRL")
print (r.status_code)
print (r.cookies)
soups = BeautifulSoup(r.content, 'html5lib')
x = getPeopleLinks(soups)
print(x)
print("http://www.xxxxx.com"+ x[2])
for link in x: 
        urllib.request.urlopen("http://www.xxxxxxx.com"+link)
print(link)

Логин: Работает правильно.
Список онлайн пользователей: Работает правильно;Я получаю весь список профилей.

Я думаю, что это проблема здесь:

for link in x: 
        urllib.request.urlopen("http://www.xxxxxxx.com"+link)
print(link)

Я вошел в другой аккаунт с мобильного телефона, мой профиль был в списке, но бот наПК не просматривал мой профиль.

Ответы [ 2 ]

0 голосов
/ 05 февраля 2019

Это из-за проблемы в синтаксисе URL.Или, может быть, из-за проблемы в этом конкретном коде, попробуйте это:

import urllib.request
for path in paths:
    url = 'http://example.com/view-online-profiles/' + path
    page = urllib.request.urlopen(url)
    print(page.read())

Или вы также можете пойти другим путем:

import requests
for path in paths:
    url = 'http://example.com/view-online-profiles/' + path
    page = requests.get(url)
    print(page) # Would return response object, can obtain status_code or body
0 голосов
/ 05 февраля 2019

Это во многом зависит от того, как платформа считает количество просмотров.В современных веб-приложениях высока вероятность того, что речь идет не о HTTP-запросе, а о потраченном времени + активности браузера, которые отслеживаются с помощью кода JS на странице.

...