Как извлечь ссылки и обрабатывать страницу, как она загружается снова и снова, используя Python Beautifulsoup - PullRequest
0 голосов
/ 04 марта 2019

Tring для извлечения ссылок и хотят обрабатывать загрузку.но даже не ссылки.код:

from bs4 import BeautifulSoup

import requests

r = requests.get('http://www.indiabusinessguide.in/business-categories/agriculture/agricultural-equipment.html')

soup = BeautifulSoup(r.text,'lxml')

links = soup.find_all('a',class_='link_orange')

for link in links:
    print(link['href'])

, пожалуйста, помогите мне справиться с этой загрузкой и извлечением ссылок.

1 Ответ

0 голосов
/ 04 марта 2019

Попробуйте использовать библиотеку lxml.Ответ получен путем размещения запроса на URL с использованием запросов.

import requests
import lxml
from lxml import html

contact_list = []
def scrape(url, pages):

  for page in range(1, pages):
    headers = {
      "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
      "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36",
      "X-Requested-With": "XMLHttpRequest",
      "Cookie": "PHPSESSID=2q0tk3fi1kid0gbdfboh94ed56",
    }

    data = {
      "page": f"{page}"
    }

    r = requests.post(url, headers=headers, data=data)
    tree = html.fromstring(r.content)

    links= tree.xpath('//a[@class="link_orange"]')
    for link in links:
      # print(link.get('href'))
      contact_list.append(link.get('href'))


url = "http://www.indiabusinessguide.in/ajax_advertiselist.php"

scrape(url, 10)
print(contact_list)
print(len(contact_list))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...