处理请求时面临urlencoding问题

SIM卡

我用 python 编写了一个脚本来从网页中抓取一些信息。该站点需要get请求方法。我面对此时的问题是,由于parameters需要与被合并url,因此应该适当地urlencoded这就是我被困的地方。我无法对其进行正确编码以获得有效响应。我试了一下,但它没有带来任何

我正在尝试的脚本:

import requests
import urllib.parse

fields ={
'/API/api/v1/Search/Properties/?f':'319 lizzie','ty':'2018','pvty':'2017','pn':'1','st':'9','so':'1','pt':'RP;PP;MH;NR','take':'20','skip':'0','page':'1','pageSize':'20'
}
payload = urllib.parse.quote_plus(fields, safe='', encoding=None, errors=None)

headers={
"User-Agent":"Mozilla/5.0"
}

page = requests.get("http://search.wcad.org/Proxy/APIProxy.ashx?", params=payload, headers=headers)
print(page.json())

上面的 URL 应该是这样的:

http://search.wcad.org/Proxy/APIProxy.ashx?/API/api/v1/Search/Properties/?f=319%20LIZZIE&ty=2018&pvty=2017&pn=1&st=9&so=1&pt=RP%3BPP%3BMH%3BNR&take=20&skip=0&page=1&pageSize=20

得到回应。

顺便说一句,这是我现有脚本的错误:

Traceback (most recent call last):
  File "C:\Users\ar\AppData\Local\Programs\Python\Python35-32\Social.py", line 9, in <module>
    payload = urllib.parse.quote_plus(fields, safe='', encoding=None, errors=None)
  File "C:\Users\ar\AppData\Local\Programs\Python\Python35-32\lib\urllib\parse.py", line 728, in quote_plus
    string = quote(string, safe + space, encoding, errors)
  File "C:\Users\ar\AppData\Local\Programs\Python\Python35-32\lib\urllib\parse.py", line 712, in quote
    return quote_from_bytes(string, safe)
  File "C:\Users\ar\AppData\Local\Programs\Python\Python35-32\lib\urllib\parse.py", line 737, in quote_from_bytes
    raise TypeError("quote_from_bytes() expected bytes")
TypeError: quote_from_bytes() expected bytes
托马拉克

这有效。正如文档所示,您无需自己进行任何 URL 编码。

关键是查询字符串从最后一个问号开始,而不是从第一个问号开始。在 URL 中包含第二个问号是强制性的,因为requests只有在没有一个问号时才添加一个。

import requests

url = "http://search.wcad.org/Proxy/APIProxy.ashx?/API/api/v1/Search/Properties/?"
params = {'f':'319 lizzie','ty':'2018','pvty':'2017','pn':'1','st':'9','so':'1','pt':'RP;PP;MH;NR','take':'20','skip':'0','page':'1','pageSize':'20'}

response = requests.get(url, params)

response.json()

结果是

{ 
    'ResultList':[{ 
        'PropertyQuickRefID':'R016698',
        'PartyQuickRefID':'O0485204',
        'OwnerQuickRefID':'R016698',
        'LegacyID':无,
        'PropertyNumber':-0620101 50000', 
        'OwnerName': 'GOOCH, PHILIP L', 
        'SitusAddress': '319 LIZZIE ST, TAYLOR, TX 76574', 
        'PropertyValue': 46785.0, 
        'LegalDescription': 'DOAK ADDITION, BOT 
        “NeighborhoodCode”:“T541”,
        “Abstract”:无,
        “Subdivision”:“S3564 - Doak Addition”,
        'PropertyType':'真实',
        'ID':0,
        '文本':无, 
        “TaxYear”:2018,
        'PropertyValueTaxYear': 2017 
    }], 
    'HasMoreData': False, 
    'TotalPageCount': 1, 
    'CurrentPage': 1, 
    'RecordCount': 1, 
    'SearchText': '319 lizzie', 
    'PagingHandledByCaller': False, 
    'TaxYear : 2018, 
    'PropertyValueTaxYear': 0 
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用片段时面临的问题

来自分类Dev

处理Json请求时出现问题

来自分类Dev

在python中旋转值时面临的问题

来自分类Dev

在iOS中获取令牌时面临的问题

来自分类Dev

在使用ngClass的多个选项时面临问题

来自分类Dev

使用Gradle构建项目时面临的问题

来自分类Dev

安装Hadoop时Shell脚本面临的问题

来自分类Dev

mcrypt和urlencoding问题

来自分类Dev

Swift Odata 的 urlEncoding 问题

来自分类Dev

在将缩略图链接到模态时面临问题

来自分类Dev

在实施国际象棋游戏时面临性能问题

来自分类Dev

我在设置功能挂钩的状态时面临问题

来自分类Dev

将状态传递给基于功能的组件时面临的问题

来自分类Dev

在添加多个Struts动作时面临的问题

来自分类Dev

迁移到Redis会话状态时面临问题

来自分类Dev

在将缩略图链接到模态时面临问题

来自分类Dev

使用 AJAX 和 PHP 删除用户记录时面临的问题

来自分类Dev

运行跨浏览器测试时面临的问题

来自分类Dev

NodeJs 在使用异步瀑布时面临这个问题

来自分类Dev

日历对象面临的问题

来自分类Dev

ShowModalDialog面临的问题

来自分类Dev

鼠标事件面临的问题

来自分类Dev

UI面临的问题[FLUTTER]

来自分类Dev

Unicode字符面临的问题

来自分类Dev

日历对象面临的问题

来自分类Dev

面临haproxy / nginx的问题

来自分类Dev

鼠标事件面临的问题

来自分类Dev

面临@PathParam 注释的问题

来自分类Dev

在 laravel 中处理 ajax 请求时出现问题 - 状态 400