小编Dan*_*Lee的帖子

如何使用不变的 URL 抓取多个页面 - Python 3

我最近接触了网页抓取并尝试抓取各种网页。目前,我正在尝试抓取以下站点 - http://www.pizzahut.com.cn/StoreList

到目前为止,我已经使用硒来刮取经度和纬度。但是,我的代码现在只提取第一页。我知道有一个动态网页抓取可以执行 javascript 并加载不同的页面,但是很难找到正确的解决方案。我想知道是否有办法访问其他 49 页左右,因为当我单击下一页时,URL 不会更改,因为它已设置,所以我不能每次都迭代不同的 URL

以下是我到目前为止的代码:

import os
import requests
import csv
import sys
import time
from bs4 import BeautifulSoup

page = requests.get('http://www.pizzahut.com.cn/StoreList')

soup = BeautifulSoup(page.text, 'html.parser')

for row in soup.find_all('div',class_='re_RNew'):
    name = row.find('p',class_='re_NameNew').string
    info = row.find('input').get('value')
    location = info.split('|')
    location_data = location[0].split(',')
    longitude = location_data[0]
    latitude = location_data[1]
    print(longitude, latitude)
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助。非常感激

javascript python selenium beautifulsoup web-scraping

7
推荐指数
1
解决办法
4937
查看次数

在Python 3中使用Pyodbc自动检测ODBC驱动程序

嗨,我目前在Python 3中使用pyodbc,并且试图通过无需在不同计算机上进行手动更改而自动检测ODBC驱动程序的方法。原因是因为我的计算机具有ODBC驱动程序13,而另一位朋友的计算机具有ODBC驱动程序11,因此无论何时从侧面运行脚本,都必须先手动更改版本才能执行该过程。

谁能帮助解决这个问题?以下是我的示例代码。

谢谢

import os
import csv
import pyodbc
import datetime
from dateutil.relativedelta import relativedelta


conn = pyodbc.connect(
    r'DRIVER={ODBC Driver 13 for SQL Server};'
    r'SERVER=****;'
    r'DATABASE=****;'
    r'Trusted_Connection=yes;'
    )

cursor = conn.cursor()

cursor.execute("Select * From Table1")
dData = cursor.fetchall()
Run Code Online (Sandbox Code Playgroud)

python sql-server odbc pyodbc python-3.x

2
推荐指数
2
解决办法
5786
查看次数