使用bs4翻译后抓取页面

时间:2018-09-26 11:42:34

标签: python web-scraping beautifulsoup http-accept-language

我正试图通过将其转换为英语来刮擦法国的网页。

这是我的代码,使用漂亮的汤,并在python中请求软件包。

import requests
from bs4 import BeautifulSoup
url = '<url>'
headers = {"Accept-Language": "en,en-gb;q=0.5"}
r = requests.get(url, headers=headers)
c = r.content
soup = BeautifulSoup(c)

但这仍然是法文。

任何人都可以建议更改/替代代码。

1 个答案:

答案 0 :(得分:1)

您可以利用TextBlob将字符串转换为各种语言,这是从法国ebay网站转换跨度的示例:

import requests
from bs4 import BeautifulSoup
from textblob import TextBlob

url = 'https://www.ebay.fr/'
french = []
english = []
r = requests.get(url)
c = r.content
soup = BeautifulSoup(c)
for li in soup.find_all('span'):
    french.append(li.text)

Frenchstr = ''.join(french)
blob = TextBlob(Frenchstr)
print(Frenchstr)
Englishstr = blob.translate(to="EN")
print('------------------------------------------------')
print(Englishstr)