Как сделать так, чтобы первое слово отображалось при поиске по сайту? - PullRequest
0 голосов
/ 17 июня 2020

У меня есть код, который частично работает при извлечении одного слова с веб-сайта, но при этом возникает 2 проблемы. Иногда он будет искать только одно слово, но, используя другие веб-сайты, он будет искать гораздо больше, чем просто одно слово, которое предполагается искать на сайте.

#!bin/usr/python3

import urllib.request
import urlopen
import bs4
import queue
import urllib.request as urllib2 
import urllib3
import re
import requests
from bs4 import BeautifulSoup

def count_words(url, the_word):
    r = requests.get(url, allow_redirects=False)
    soup = BeautifulSoup(r.content, 'lxml')
    words = soup.find(text=lambda text: text and the_word in text)
    print(words)
    return len(words)


def main():
    url = 'https://createandgo.com/'
    word = '/wp-content'
    count = count_words(url, word)
    print('\nUrl: {}\ncontains {} occurrences of word: {}'.format(url, count, word))

if __name__ == '__main__':
    main()

Также я пытаюсь показать первые результаты, но findFirst не работает для переменной word.

words = soup.findFirst(text=lambda text: text and the_word in text)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...