我制作了一个简单的Web抓取程序,我在机器上本地尝试了此代码,但该服务器无法正常工作。
#-*- coding: utf-8 -*-
from bs4 import BeautifulSoup
import requests
url = 'https://www.amazon.in/gp/product/B085YG2X5K/ref=s9_acss_bw_cg_PRICEDP_5d1_w?pf_rd_m=A1K21FY43GMZF8&pf_rd_s=merchandised-search-2&pf_rd_r=8WBM4CT83NFYZNGJW14A&pf_rd_t=101&pf_rd_p=42c4540d-2ecb-44d3-be4e-11aab9797e21&pf_rd_i=17024262031'
page = requests.get(url)
soup = BeautifulSoup(page.text, 'html.parser')
print(soup.find_all('span',{'id':'productTitle'}))
错误:
Traceback (most recent call last):
File "main.py", line 15, in <module>
print(soup.find_all('html'))
UnicodeEncodeError: 'ascii' codec can't encode character '\u2022' in position 158: ordinal not in range(128)
答案 0 :(得分:0)
当然可以。 服务器不是人类,它们只需要获取包含您要抓取的数据的html代码。 它们将在无头浏览器上运行,这意味着将在不打开显示呈现的HTML / CSS / JAVASCRIPT的任何窗口的情况下获取数据的浏览器,它们将仅获取数据,获取与查询匹配的html标签并按指示处理数据(根据您的情况将其打印到控制台)。