在网站上搜索

时间:2017-08-04 17:29:31

标签: python searchbar

我正在尝试访问该网站并将“python course”发布到搜索中。没有错误,我可以访问网站,但我唯一能得到的是主页面。好像我不能把“python course”这个词放到搜索中,我不知道为什么。谢谢你的帮助

import urllib.request
import urllib.parse

url = "https://wwww.pythonprogramming.net/search"
values = {'q':'python course'}
data = urllib.parse.urlencode(values) 
data = data.encode('UTF-8')
req = urllib.request.Request(url, data)
resp = urllib.request.urlopen(req)
repData = resp.read()
print(repData)

编辑: 正如我所说,访问该网站没有问题。但是如果你真的去网站并在搜索栏中手动输入“python course”,你会得到与python不同的结果。通过python,print函数只为我打印主页,但没有我正在搜索的东西的标志(单词,短语)。但是,如果您更改代码中的url变量并搜索“pythonprogramming.net/search/?q=python+course,您将得到您想要的内容

2 个答案:

答案 0 :(得分:2)

问题是你有四个w:wwww 改为:

import urllib.request
import urllib.parse

url = "https://www.pythonprogramming.net/search/"
values = {'q':'python course'}
data = urllib.parse.urlencode(values)
data = data.encode('UTF-8')
req = urllib.request.Request(url, data)
resp = urllib.request.urlopen(req)
repData = resp.read()
print(repData)

答案 1 :(得分:2)

唯一真正的问题是您的网址中w太多了。如果您没有绑定到urllib,我建议您使用requests。相同的输出和更少的代码。

import requests

payload = {'q': 'python course'}
request = requests.get('https://www.pythonprogramming.net/search', params=payload)
print(request.text)