漂亮的汤输出 {{ model.attribute }} 而不是普通文本
Beautiful soup output {{ model.attribute }} instead normal text
我的机器:
列表项
Ubuntu 16.04。
- Python 3.5.2。
- bs4 4.6.0。
- lxml 3.8.0。
我正在尝试解析 tokopedia site。这是我的代码:
tokopedia_link = 'https://www.tokopedia.com/search?st=product&q=baju+baru'
req = urllib.request.Request(tokopedia_link)
req.add_header('User-agent', 'Mozilla 5.10')
with urllib.request.urlopen(req) as response:
the_page = response.read()
soup = BeautifulSoup(the_page, "lxml")
print (soup.prettify())
我认为输出是 django 模型框架 ex。 {{ model.attribute }}。
但是如果我保存 tokopedia 站点然后将它放在 apache2 站点文件夹中然后我将 tokopedia_link 更改为我的本地站点,它会正常输出。
有什么建议吗?
更新 1:
我检查 print(the_page)
的输出,它打印出同样奇怪的结果。所以我的结论是问题出在打开 url.
时
更新二:
我尝试使用请求模块创建到 url 的连接。还是一样的结果。
payload = {'st': 'product', 'q': 'baju baru'}
headers = {'user-agent': 'Mozilla/5.0'}
r = requests.post('http://www.tokopedia.com/search', params=payload, headers=headers)
更新 3:
我尝试解析 amazon.com 并且输出正常。基于django框架的web是否导致了这个问题?我将创建基于 django 的网络用于研究。
更新 4:
我创建了基于 Django 的 Web,然后对其进行了解析,输出没有什么奇怪的。
更新 5:
我做了更多研究,angularjs 可能有问题。我在站点代码中看到 ng-cloak ng-binding
。
更新 6:
问题解决了。基于 angularjs 的网络是问题所在。 Urllib 或请求模块无法解决连接,所以我使用 selenium 并且它有效。
我的机器:
列表项
Ubuntu 16.04。
- Python 3.5.2。
- bs4 4.6.0。
- lxml 3.8.0。
我正在尝试解析 tokopedia site。这是我的代码:
tokopedia_link = 'https://www.tokopedia.com/search?st=product&q=baju+baru'
req = urllib.request.Request(tokopedia_link)
req.add_header('User-agent', 'Mozilla 5.10')
with urllib.request.urlopen(req) as response:
the_page = response.read()
soup = BeautifulSoup(the_page, "lxml")
print (soup.prettify())
我认为输出是 django 模型框架 ex。 {{ model.attribute }}。
但是如果我保存 tokopedia 站点然后将它放在 apache2 站点文件夹中然后我将 tokopedia_link 更改为我的本地站点,它会正常输出。
有什么建议吗?
更新 1:
我检查 print(the_page)
的输出,它打印出同样奇怪的结果。所以我的结论是问题出在打开 url.
更新二:
我尝试使用请求模块创建到 url 的连接。还是一样的结果。
payload = {'st': 'product', 'q': 'baju baru'}
headers = {'user-agent': 'Mozilla/5.0'}
r = requests.post('http://www.tokopedia.com/search', params=payload, headers=headers)
更新 3:
我尝试解析 amazon.com 并且输出正常。基于django框架的web是否导致了这个问题?我将创建基于 django 的网络用于研究。
更新 4:
我创建了基于 Django 的 Web,然后对其进行了解析,输出没有什么奇怪的。
更新 5:
我做了更多研究,angularjs 可能有问题。我在站点代码中看到 ng-cloak ng-binding
。
更新 6: 问题解决了。基于 angularjs 的网络是问题所在。 Urllib 或请求模块无法解决连接,所以我使用 selenium 并且它有效。