首页 > 解决方案 > 网页抓取谷歌python美丽汤的问题

问题描述

我正在编写代码:我想打开一些已找到的子页面。

import bs4
import requests

url = 'https://www.google.com/search?q=python'
res = requests.get(url)
res.raise_for_status()
soup = bs4.BeautifulSoup(res.text, 'html.parser')
list_sites = soup.select('a[href]')
print(len(list_sites))

我想在谷歌中打开例如“python”之类的网站,然后打开一些第一个链接,但是我在函数选择方面遇到了问题。我应该在里面放什么来找到子页面的链接?像一个:波兰 Python 编码器组 - 新闻,欢迎来到 Python.org,......我试图输入:a[href],a,h3 类,但它不起作用......

标签: pythonbeautifulsoup

解决方案


这是你需要的吗?

from bs4 import BeautifulSoup
import requests, urllib.parse
import lxml

def print_extracted_data_from_url(url):

    headers = {
        "User-Agent":
        "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.19582"
    }
    response = requests.get(url, headers=headers).text
    soup = BeautifulSoup(response, 'lxml')


    for container in soup.findAll('div', class_='tF2Cxc'):
        head_link = container.a['href']
        print(head_link)

    return soup.select_one('a#pnnext')



next_page_node = print_extracted_data_from_url('https://www.google.com/search?hl=en-US&q=python')

推荐阅读