欢迎访问宙启技术站
智能推送

10个用于爬虫的Python函数

发布时间:2023-06-22 07:06:25

1. requests库中的get方法:

该方法可用于获取网页的HTML内容,从而进行数据提取和爬取。

例如:

import requests

url = 'https://www.baidu.com'

response = requests.get(url)

print(response.text)

2. BeautifulSoup库中的find方法:

该方法可用于获取HTML标签中指定属性值的数据。

例如:

from bs4 import BeautifulSoup

html = '''<html><body><div id="test">Hello World!</div></body></html>'''

soup = BeautifulSoup(html, 'html.parser')

data = soup.find('div', {'id': 'test'}).text

print(data)

3. re模块中的compile方法:

该方法可用于编译正则表达式,并返回一个正则表达式对象,从而方便对HTML内容中的数据进行提取。

例如:

import re

pattern = re.compile(r'<div class="content">(.+?)</div>', re.S)

html = '''<div class="content">Hello World!</div>'''

data = re.findall(pattern, html)[0]

print(data)

4. json模块中的loads方法:

该方法可用于将JSON格式的数据转换为Python的字典或列表类型。

例如:

import json

json_str = '{"name": "Jack", "age": 18}'

data = json.loads(json_str)

print(data['name'])

5. os库中的mkdir方法:

该方法可用于创建新文件夹。

例如:

import os

path = '/Users/test'

os.mkdir(path)

6. time模块中的sleep方法:

该方法可用于让程序暂停一段时间,防止爬取速度过快。

例如:

import time

time.sleep(1)

7. random模块中的choice方法:

该方法可用于从列表或字符串等序列中随机选择一个元素。

例如:

import random

data_list = ['apple', 'banana', 'orange']

result = random.choice(data_list)

print(result)

8. requests库中的post方法:

该方法可用于向网站提交POST请求,并带上数据参数。

例如:

import requests

url = 'https://www.baidu.com/search'

data = {'keyword': 'Python'}

response = requests.post(url, data)

print(response.text)

9. logging库中的basicConfig方法:

该方法可用于配置程序的日志输出。

例如:

import logging 

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')

logging.debug('This is a debug message')

10. selenium库中的webdriver方法:

该方法可用于开启一个浏览器窗口,从而对网页进行模拟操作。

例如:

from selenium import webdriver

driver = webdriver.Chrome()

driver.get('https://www.baidu.com')

search_input = driver.find_element_by_id('kw')

search_input.send_keys('Python')

search_btn = driver.find_element_by_id('su')

search_btn.click()

以上便是10个常用的Python爬虫函数,这些函数通常被用于实现数据爬取、数据处理和数据存储。