首页 > 解决方案 > Python,输入字符串并获取输出的脚本

问题描述

我正在构建一个脚本来输入一个台湾地址('928屏东县东港镇嘉新路160、162号')到这个网站URL = "https://www.latlong.net/convert-address-to-lat-long.html",并得到纬度和经度作为输出。

我尝试了一些 htlm 阅读器,例如漂亮的肥皂或硒,但没有成功,可能我错过了一些东西。有人可以建议我在 python 中打印输出需要修复什么吗?

import urllib, os, urllib.request, time,  requests, re
from bs4 import BeautifulSoup
import pandas as pd
import requests
from selenium import webdriver
import re

URL = "https://www.latlong.net/convert-address-to-lat-long.html"
PropertyAddress_CN = "928屏東縣東港鎮嘉新路160、162號"

input_address = {"Type address here to get lat long":PropertyAddress_CN}

r = requests.post(URL, data = input_address)

soup = BeautifulSoup(r.content, 'lxml')

result = soup.find_all()

print(soup)

标签: pythonpython-3.xseleniumselenium-webdriverbeautifulsoup

解决方案


该网站使用 API 端,您可以直接向其发布:

import requests

url = "https://www.latlong.net/_spm4.php"
r = requests.post(
    url,
    data={"c1": "928屏東縣東港鎮嘉新路160、162號", "action": "gpcm", "cp": ""},
    headers={"x-requested-with": "XMLHttpRequest"},
)
if r.status_code == 200:
    lat, long = r.text.split(",")
    print("Latitude {}, Longitude {}".format(lat, long))

请确保您遵守网络服务的条款和条件。


推荐阅读