Как решить код выхода 0 без вывода в web-scraping с помощью Beautifulsoup в Python 3.7 - PullRequest
0 голосов
/ 11 июня 2019

время импорта

import requests

from bs4 import BeautifulSoup

from bs4.element import Tag

url = 'https://www.thespec.com/search/allarticles/?location=hamilton&q=cybersecurity&pageindex={}&sort=datedesc&pagesize=25'

pages = 3

for page in range(1, pages+1):

    res = requests.get(url.format(page))

    soup = BeautifulSoup(res.text,"lxml")

    for item in soup.find_all("a", {"class": "sc-item"}, href=True):
        _href = item.get("href")
        try:
            resp = requests.get(_href)
        except Exception as e:
            try:
                resp = requests.get("https://www.thespec.com"+_href)
            except Exception as e:
                continue

        sauce = BeautifulSoup(resp.text,"lxml")

        dateTag = sauce.find("section", "date")

        titleTag = sauce.find("h1", {"class": "ar-title"})

        contentTag1 = sauce.find("div", {"class": "asset-body-part1"})
        contentTag2 = sauce.find("div", {"class": "asset-body-part2"})

        date = None
        title = None
        content1 = None
        content2 = None

        if isinstance(dateTag,Tag):
            date = dateTag.get_text().strip()

        if isinstance(titleTag,Tag):
            title = titleTag.get_text().strip()

        if isinstance(contentTag1,Tag):
            content1 = contentTag1.get_text().strip()

        if isinstance(contentTag2,Tag):
            content2 = contentTag2.get_text().strip()

        print(f'{date}\n {title}\n {content1}\n {content2}\n')

        time.sleep(3)

Я сталкиваюсь со странной проблемой, когда большую часть времени код работает нормально, но не выводится, и иногда отображается ошибка «request.exceptions.ConnectionError».Я не знаю, в чем проблема.

Более того, при попытке найти класс для даты в HTML на этом веб-сайте нет раздела только для класса и в эту дату.Я не знаю, как написать это в коде.

Заранее спасибо.

...